如何通过Gradle将WAR包部署至Embedded TomEE 7.1.5?
解决Gradle部署WAR包到Embedded TomEE的方法
步骤1:调整tomee-embedded任务配置
要让嵌入式TomEE加载WAR包,核心是在Gradle任务里明确指定WAR文件路径,并让任务依赖WAR构建步骤,确保启动前WAR已生成:
task tomeeEmbedded(type: JavaExec) { // 先执行war任务生成WAR包 dependsOn war mainClass = 'org.apache.tomee.embedded.Main' // 配置任务类路径,包含项目运行时依赖和嵌入式TomEE依赖 classpath = sourceSets.main.runtimeClasspath + configurations.tomeeEmbedded // 关键参数:指定要部署的WAR包绝对路径 args = ['--deploy', war.archiveFile.get().asFile.absolutePath] }
步骤2:确保嵌入式TomEE依赖配置正确
在build.gradle中添加嵌入式TomEE的专属依赖配置:
configurations { tomeeEmbedded } dependencies { // 项目原有依赖... tomeeEmbedded 'org.apache.tomee:tomee-embedded:7.1.5' }
步骤3:可选的自定义配置
如果需要指定上下文路径、端口等,可扩展args参数:
args = [ '--deploy', war.archiveFile.get().asFile.absolutePath, '--context', '/calculator-ws', // 自定义上下文路径 '--port', '8081' // 自定义端口 ]
执行gradle tomeeEmbedded -i时,查看日志会出现Deploying war ...相关条目,说明WAR包已被嵌入式TomEE成功加载。
内容的提问来源于stack exchange,提问作者Clueless
相关产品推荐
相关产品推荐

