本文主要是介绍idea使用Maven自定义脚手架生成项目问题记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
idea使用Maven自定义脚手架生成项目问题记录
- 问题说明
- 解决方法
- 使用远程仓库中原型
- 使用本地仓库的自定义脚手架
问题说明
工作需要,有同事编写了一个自定义的maven脚手架,其他人可以依据这个脚手架自动生成项目,可以快速的创建项目。但是再使用脚手架的时候遇到了问题,在使用mvn命令生成项目的时候,可以正确快速的生成项目,但是在使用idea直接生成的时候遇到了问题。问题如下:再使用idea自带的maven-archetype 生成的时候报原型项目不存在
点击生成的时候报错:Could not find artifact com.hcfc:my-test-product:pom:1.0.1 in HcfcNexus
一直报找不到,但是maven仓库中这个jar包其实是存在的。
解决方法
使用远程仓库中原型
看报错,再仓库中找不到jar包,但是实际仓库中jar包已经存在,那只能是创建的时候,idea使用的settings文件没有指定到要使用的maven私服地址,大概率是maven配置的问题。所以先配置一下idea的全家maven配置,注意这里一定要先配idea的全局maven,选择和你maven私服对应的settings文件。否则还是会报找不到包。
配置方法如下:
使用远程nexus仓库的archetype创建项目的时候,必须在自己的maven conf 下settings.xml加入以下配置:主要是标签里边的
<profile><!-- the profile id is arbitrary 这个id是任意填的--><id>my_archetype</id><repositories><repository><!-- 这repository Id必须是archetype --><id>archetype</id><name>my archetypes</name><url>http://test.product.com:8081/repository/maven-public/</url><releases><enabled>true</enabled><checksumPolicy>fail</checksumPolicy></releases><snapshots><enabled>true</enabled><checksumPolicy>warn</checksumPolicy></snapshots></repository></repositories></profile>
配置好以后,重新去idea的maven-archeytype生成项目,发现可以成功了。
使用本地仓库的自定义脚手架
要使用本地的,首先是这个jar包要在本地的仓库中。
核对本地仓库中是否有archetype-catalog.xml 文件,文件中放的是所有原型项目的坐标信息。
如果没有在仓库地址中执行一下命令,生成一个本地的archetype-catalog.xml 文件
mvn archetype:crawl (前提是本地仓库中有这个原型的jar包)
ideal中配置:
新增的配置,目录一定要指定到archetype-catalog.xml文件
新增后,选择新增的配置
可直接选择要使用的原型,
会自动带出变量,点击create,即可生成项目。
这篇关于idea使用Maven自定义脚手架生成项目问题记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!