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

相关推荐
Daniel 大东几秒前
BugJson因为json格式问题OOM怎么办
java·安全
Theodore_10224 小时前
4 设计模式原则之接口隔离原则
java·开发语言·设计模式·java-ee·接口隔离原则·javaee
冰帝海岸5 小时前
01-spring security认证笔记
java·笔记·spring
世间万物皆对象6 小时前
Spring Boot核心概念:日志管理
java·spring boot·单元测试
没书读了6 小时前
ssm框架-spring-spring声明式事务
java·数据库·spring
小二·6 小时前
java基础面试题笔记(基础篇)
java·笔记·python
开心工作室_kaic7 小时前
ssm161基于web的资源共享平台的共享与开发+jsp(论文+源码)_kaic
java·开发语言·前端
懒洋洋大魔王7 小时前
RocketMQ的使⽤
java·rocketmq·java-rocketmq
武子康7 小时前
Java-06 深入浅出 MyBatis - 一对一模型 SqlMapConfig 与 Mapper 详细讲解测试
java·开发语言·数据仓库·sql·mybatis·springboot·springcloud
转世成为计算机大神7 小时前
易考八股文之Java中的设计模式?
java·开发语言·设计模式