博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
maven archetype:generate 的进一步理解
阅读量:6447 次
发布时间:2019-06-23

本文共 4278 字,大约阅读时间需要 14 分钟。

可以说纠结了不少时间了
用mvn archetyoe:generate 时总是会出现以下的情况:
 
正常的应该是
 
Java代码  
$ mvn archetype:generate  
[INFO] Scanning for projects...  
[INFO] Searching repository for plugin with prefix: 'archetype'.  
[INFO] ------------------------------------------------------------------------  
[INFO] Building Maven Default Project  
[INFO]    task-segment: [archetype:create] (aggregator-style)  
[INFO] ------------------------------------------------------------------------  
[INFO] Preparing archetype:generate  
[INFO] No goals needed for project - skipping  
[INFO] Setting property: classpath.resource.loader.class => 'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.  
[INFO] Setting property: velocimacro.messages.on => 'false'.  
[INFO] Setting property: resource.loader => 'classpath'.  
[INFO] Setting property: resource.manager.logwhenfound => 'false'.  
[INFO] [archetype:generate]  
Choose archetype:  
1: internal -> appfuse-basic-jsf (AppFuse archetype for creating a web application with Hibernate, Spring and JSF)  
2: internal -> appfuse-basic-spring (AppFuse archetype for creating a web application with Hibernate, Spring and Spring MVC)  
...........  
internal -> maven-archetype-sar (JBoss Service Archive)  
36: internal -> wicket-archetype-quickstart (A simple Apache Wicket project)  
Choose a number:  (1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25/26/27/28/29/30/31/32/33/34/35/36): 15  
....  
 
 
以前使用一直正常(有一段时间了)
可现在无论在哪台机器上都是这样的情况:
Java代码  
[INFO] Scanning for projects...  
[INFO] Searching repository for plugin with prefix: 'archetype'.  
[INFO] ------------------------------------------------------------------------  
[INFO] Building Maven Default Project  
[INFO]    task-segment: [archetype:generate] (aggregator-style)  
[INFO] ------------------------------------------------------------------------  
[INFO] Preparing archetype:generate  
[INFO] No goals needed for project - skipping  
[INFO] [archetype:generate {execution: default-cli}]  
[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:  
1: remote -> docbkx-quickstart-archetype (null)  
2: remote -> gquery-archetype (null)  
.......  
288: remote -> trails-secure-archetype (null)  
289: remote -> tynamo-archetype (null)  
290: remote -> wicket-scala-archetype (Basic setup for a project that combines Scala and Wicket,  
                depending on the Wicket-Scala project. Includes an example Specs  
                test.)  
291: remote -> circumflex-archetype (null)  
Choose a number: 80:  
....  
  
居然是这样,到了290了....
而且choose a nubmer 默认写了个80不知道啥意思..... 选以前的web项目(18) 不管用还是继续让我choose version
最后发现可以choose的version 只有 1 和2 ..
根本没有普通java项目和web项目
咋回事儿?
 
 
 
 
 后来找到了解决方案:
方案1:绕行

 

mvn archetype:create -DgroupId=[your group id] -DartifactId=[your archetype id] -DarchetypeArtifactId=maven-archetype-webapp
  
方案2 : 谢谢,juvenshun 大哥的帮助。(引用):
Java代码  
可以使用 $mvn archetype:generate -DarchetypeCatalog=internal  
archetypeCatalog表示插件使用的archetype元数据,默认值为remote,local,即中央仓库archetype元数据(http://repo1.maven.org/maven2/archetype-catalog.xml)加上插件内置元数据的和  
由于中央仓库的archetype太多,导致这个列表太长  
因此自己指定仅用内置元数据(20个左右,好像),就可以解决你的烦恼了  
 
****************************************
maven自定义archetype
 
创建archetype 

archetype:create -DgroupId=[package name] -DartifactId=[project name] -DarchetypeArtifactId=maven-archetype-archetype 

创建archetype时DarchetypeArtifactId 必须填maven-archetype-archetype 
 
在运行cmd输入 
Java代码  

 

mvn archetype:create -DgroupId=org.myArchetype -DartifactId=maven-my-archetype -DarchetypeArtifactId=maven-archetype-archetype  
 
maven会在当前文件夹创建一个目录。 
maven-my-archetype\src\main\resources\archetype-resources 目录下的文件会复制到新建的maven项目下面 
 
maven-my-archetype\src\main\resources\META-INF\maven\archetype.xml 
Xml代码  

 

<archetype>  
  <id>maven-my-archetype</id>  
  <sources>  
    <source>src/main/java/App.java</source>  
  </sources>  
  <testSources>  
    <source>src/test/java/AppTest.java</source>  
  </testSources>  
</archetype>  
 
这个文件是配置需要复制到新建项目下的文件,比如你的maven项目所在的包是org.test,maven会将src/main/java/App.java文件复制到src/test/java/org/test/App.java 
 
安装到本地库 
Java代码  

maven-my-archetype>mvn install  

 
 
创建maven项目 
Java代码  

mvn archetype:generate -DarchetypeGroupId=org.myArchetype -DarchetypeArtifactId=maven-my-archetype -DarchetypeVersion=1.0-SNAPSHOT -DgroupId=org.test -DartifactId=test  

转载于:https://www.cnblogs.com/huapox/archive/2013/01/01/3251540.html

你可能感兴趣的文章
《Android应用开发》——1.1节下载开发软件
查看>>
《贝叶斯思维:统计建模的Python学习法》——1.7 Monty Hall难题
查看>>
升级TCP协议使网速提升30%,中国受益明显
查看>>
Go 语言对 Android 原生应用开发的支持情况
查看>>
《沟通的技术——让交流、会议与演讲更有效》一1.1 一切尽在计划之中
查看>>
Firefox 44 浏览器内建更好的 SSL 错误指示器
查看>>
《数据科学:R语言实现》——2.9 使用twitteR
查看>>
《思科UCS服务器统一计算》一第2章 服务器架构2.1 处理器的演变
查看>>
微软概述 Islandwood 计划
查看>>
《CUDA C编程权威指南》——3.2节理解线程束执行的本质
查看>>
《深入理解Android》一导读
查看>>
linux查看登录用户及踢掉用户
查看>>
如何防止网站因改版导致权重下降?
查看>>
《伟大的计算原理》一大数据
查看>>
《UG NX8.0中文版完全自学手册》一导读
查看>>
Windows和Linux端rsync推拉同步时中文乱码解决方法
查看>>
《Spark核心技术与高级应用》——1.3节本章小结
查看>>
解决军哥lnmp一键包报错pycurl.so
查看>>
Google 搜索结果正式 AMP 化
查看>>
《树莓派Python编程入门与实战》——第2章 认识Raspbian Linux发行版 2.1 了解Linux...
查看>>