Java 使用pomen的Maven包括
我对Maven是一个全新的婴儿,我被困在了Maven里 有一个元素pomclude,用于包含另一个POM文件。 当我用命令构建总线核心api时Java 使用pomen的Maven包括,java,maven,Java,Maven,我对Maven是一个全新的婴儿,我被困在了Maven里 有一个元素pomclude,用于包含另一个POM文件。 当我用命令构建总线核心api时 mvn package -U 它只适用于当前项目。在构建过程中不会调用其他函数 总线核心api中的pom.xml: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schema
mvn package -U
它只适用于当前项目。在构建过程中不会调用其他函数
总线核心api中的pom.xml:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>bus-core-api</groupId>
<artifactId>bus-core-api</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<build>
<plugins>
<plugin>
<artifactId>maven-invoker-plugin</artifactId>
<version>1.6</version>
<configuration>
<debug>true</debug>
<pomIncludes>
<pomInclude>app-web-ui/pom.xml</pomInclude>
<pomInclude>app-desktop-ui/pom.xml</pomInclude>
</pomIncludes>
</configuration>
<executions>
<execution>
<id>build</id>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
4.0.0
总线核心api
总线核心api
1.0-快照
罐子
maven调用器插件
1.6
真的
应用程序web ui/pom.xml
应用程序桌面ui/pom.xml
建造
跑
部分输出:
[INFO]将1个源文件编译为c:\apache-maven-3.3.3\bus core api\target\clas
ses
其他人失踪了。你能告诉我为什么吗?是一个配置。引用文档,此参数用于:
包括用于在集成测试目录中搜索项目的模式
这意味着在项目的集成测试期间,Maven将同时运行app web ui
和app desktop ui
项目,并将结果输出到命令行
该插件的目标默认绑定到Maven阶段的集成测试。因为您没有指定阶段,所以它保留默认值。查看,您可以看到集成测试
阶段在包
阶段之后。因此,当您运行mvn包
时,Maven不会执行集成测试
阶段,因此永远不会调用插件
如果要调用该阶段,可以运行mvn安装
或mvn验证
(或集成测试之后的任何阶段,包括该阶段)
另一个解决方案是在maven invoker插件的配置中指定另一个阶段(比如test
),但我建议您保留默认值。为什么您要使用这样一个古老的maven invoker插件版本(2.0.0)是当前版本…好的,我将尝试更改为2.0。缺少包含模块“应用程序web ui”和应用程序桌面ui的编译。根据教程,应该根据指定的POM调用和编译它们。这就是问题所在。我刚刚收到bus core api文件夹中的编译。有什么想法吗?我调用了两个阶段,没有做任何更改。输出几乎相同。未编译(调用)包含的模块。缩短输出:[INFO]正在将1个源文件编译为c:\apache-maven-3.3.3\bus core api\target\clas ses我可能会错过要编译的文件夹中的某些内容吗?[信息]未选择要执行的项目。我只定义了pom.xml文件,没有java源代码,等等。。这可能是原因吗?