无法使用自定义创建的maven原型。
Maven告诉我:您的过滤器不匹配任何原型。 我的系统:
- Windows 7
- Java 7
- Maven 3.2
我已经采取的步骤是:
- 创建我的项目
- 在命令提示符中导航到我的项目并运行以下命令:
mvn archetype:create-from-project
- 导航到target\generated-sources\archetype并运行此命令:
mvn install archetype:update-local-catalog
回到我的Projects文件夹并运行以下命令:
mvn archetype:generate -DarchetypeCatalog=local
运行该命令后,我看到:
[INFO] Scanning for projects... [INFO] [INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleTreadedBuilder with a thread count of 1 [INFO] [INFO] ----------------------------------------------------- [INFO] Building restTemplate-archetype 1.0-SNAPSHOT [INFO] ----------------------------------------------------- [INFO] [INFO] >>> maven-archetype-plugin:2.3:generate (default-cli) @restTemplate-archetype >>> [INFO] <<< maven-archetype-plugin:2.3:generate (default-cli) @restTemplate-archetype <<< [INFO] [INFO] --- maven-archetype-plugin:2.3:generate (default-cli) @restTemplate-archetype --- [INFO] Generating project in Interactive mode [INFO] No archetype defined. Using maven-archetype-quickstart (org.apache.maven.archetypes:maven-archetype-quickstart:1.0) Choose archetype: Your filter doesn't match any archetype (hint: enter to return to initial list) choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): :
然而 如果我在Eclipse中导航到New->Project->Maven Project 我去选择一个原型,导航到我的archetype-catalog.xml(位于我的~/.m2/目录中),我可以看到我的原型已准备好使用……但如果我使用我的“默认本地”,它就不在那里?
我的settings.xml文件夹将我的本地存储库设置为
<localRepository>~/Projects_3.7.1/.m2/repository</localRepository>
如果我尝试使用我的archetype-catalog.xml,Eclipse将允许我使用我的原型...但它会破坏任何XML,但这是另一个帖子的问题。我相信如果我让Maven从我的自定义原型生成我的项目,那么一切都会很好。
有什么建议吗?
mvn install archetype:update-local-catalog
后,我的**/.m2/archetype-catalog.xml被更新了。但是使用/.m2/repository/archetype-catalog.xml中查找目录。确实,-X
运行mvn archetype:generate -DarchetypeCatalog=local
时,生成器会在mvn archetype:crawl
将目录写入:/.m2/repository/archetype-catalog.xml。现在即使我从/.m2**中删除XML(就像我根本没有运行update-local-catalog
一样),生成也能正常工作。希望我能更好地理解。 - Scott Kurz