问题描述
我使用 Maven 任务创建了一个 Azure 管道来构建一组 Web 应用程序。已创建工件提要,并将所需的 [repository] 和 [distributionManagement] 部分添加到根 pom 文件中,如下所示:
<repositories>
<repository>
<id>ion-wildfly-pipeline-Feed</id>
<url>https://pkgs.dev.azure.com/MYFeedNAME</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<distributionManagement>
<repository>
<id>ion-wildfly-pipeline-Feed</id>
<url>https://pkgs.dev.azure.com/MYFeedNAME</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</distributionManagement>
管道作业完成且没有错误。在工件提要中,我可以看到很多在构建过程中下载的依赖项,但生成的 .war 文件不存在。
知道我错过了什么吗? Maven 构建命令的结果在哪里结束?不应该是指定的神器提要吗?
编辑以添加管道 yaml:
触发:
- 大师
池: vmImage: ubuntu 最新版
步骤:
-
任务:Maven@3 输入: mavenPomFile: 'pom.xml'
mavenoptions: '-Xmx3072m -DartifactId=ion-wildfly-pipeline-Feed'
javaHomeOption: 'JDKVersion'
jdkVersionoption: '1.8'
jdkArchitectureOption: 'x64'
publishJUnitResults: 真
testResultsFiles: '**/surefire-reports/TEST-*.xml'
目标:'打包'
mavenAuthenticateFeed:真
解决方法
如果你想生成war文件,你应该我认为你必须用war类型的打包来定义你的项目,并在编译时添加maven插件来生成war:
.....
<packaging>war</packaging>
....
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<attachClasses>true</attachClasses>
<webXml>xxx/web.xml</webXml>
<webResources>
<resource>
<directory>xxx/xxx</directory>
<filtering>true</filtering>
</resource>
</webResources>
</configuration>
</plugin>
...