这就是我创建多模块maven项目的方式:
父模块
mvn archetype:生成
archetypeGroupId:multimodule-project
archetypeArtifactId:parent-module
module-A
mvn archetype:生成
archetypeGroupId:multimodule-project
archetypeArtifactId:module-A
parent-module 是 module-A
的父级从父pom
编辑 archetypeArtifactId 后archetypeArtifactId:parent-module-edit
我收到错误:
Some problems were encountered while building the effective model for multimodule-project:module-A:jar:1.0-SNAPSHOT
[WARNING] 'build.plugins.plugin.version' for org.apache.felix:maven-bundle-plugin is missing. @ multimodule-project:module-A:[unknown-version], D:\mmvnproject\module-A\pom.xml, line 54, column 12
我应该如何正确编辑maven项目archetypeArtifactId?是否存在存储这些设置的数据库,因此必须在那里编辑它们,而不仅仅是pom?
更新
parent-module pom
<?xml version="1.0" encoding="UTF-8"?>
<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>multimodule-project</groupId>
<artifactId>parent-module</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>parent-module</name>
<modules>
<module>module-A</module>
</modules>
</project>
module-A pom
<?xml version="1.0" encoding="UTF-8"?>
<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>
<artifactId>module-A</artifactId>
<version>1.0</version>
<packaging>bundle</packaging>
<parent>
<groupId>multimodule-project</groupId>
<artifactId>parent-module</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
</project>
答案 0 :(得分:1)
你的模块 - 一个pom是错误的,你应该让pom下面使它工作:
<?xml version="1.0" encoding="UTF-8"?>
<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>
<artifactId>module-A</artifactId>
<version>1.0</version>
<packaging>bundle</packaging>
<parent>
<groupId>multimodule-project</groupId>
<artifactId>parent-module</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
</project>
编辑:更新以添加一些想法,因为您已更正原始帖子。
您正在使用的原型有些奇怪。通常情况下,如果设想得很好,你只需要执行mvn archetype:generate一次。我认为因为您的原型不是一个多模块项目,所以解释了使用它正确设置工作区的困难。
如果你可以按照tutorial来修改你的原型来创建一个好的多模块原型,我认为它会更容易使用。