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,即可生成项目。

相关推荐
mldong6 小时前
一个 App,十三套后端:手机审批端 uni-jeeflow-app 开源了
java·架构
tqs_123457 小时前
MySQL RR隔离级别死锁|Gap间隙锁、临键锁,订单并发范围查询死锁根因方案
java
逆境不可逃7 小时前
Pi Agent 学习笔记:多个工具怎样并行执行
java
Flynt8 小时前
Java 27 升级实测:默认值动得比新特性多,有个老参数会让 JVM 直接起不来
java·jvm·后端
Bs_MoneyMagnet8 小时前
基于springboot+vue的个人健康管理系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·vue3·springboot3·计算机毕业设计
星云API技术支持8 小时前
企业微信二次开发:群权限设置、成员管理与群资料维护的接口组合实践
java·前端·企业微信
niucloud-admin8 小时前
JAVA V6 多商户商城 开发文档——job 计划任务开发
java·python·github
海宇AI9 小时前
零信任架构实战:基于海宇柠檬查出险-登记证构建自动化车抵贷核保网关
java·人工智能·架构·自动化
cfm_291411 小时前
单例模式详解
java
我叫张土豆11 小时前
本体论、DDD、SDD、TDD:AI 编程时代的四层认知栈
java·人工智能