加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSS
您当前的位置:首页 > 本地

怎么把jar包发布到maven仓库

时间:2024-02-11 02:07:33  来源:http://www.gzrxw.net  作者:admin

在Maven项目中使用本地JAR包有两种方法:

1. 使用system scope

<dependencies>

<dependency>

<groupId>org.richard</groupId>

<artifactId>my-jar</artifactId>

<version>1.0</version>

<scope>system</scope>

<systemPath>${project.basedir}/lib/my-jar.jar</systemPath>

</dependency>

</dependencies>

system scope引入的包,在使用jar-with-dependencies打包时将不会被包含,可以使用resources将本地包打进jar-with-dependencies

<build>

<plugins>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-shade-plugin</artifactId>

<executions>

<execution>

<id>make-assembly</id>

<phase>package</phase>

<goals>

<goal>shade</goal>

</goals>

<configuration>

<descriptorRefs>

<descriptorRef>jar-with-dependencies</descriptorRef>

</descriptorRefs>

<finalName>xxx-jar-with-dependencies</finalName>

</configuration>

</execution>

</executions>

</plugin>

</plugins>

<resources>

<resource>

<targetPath>lib/</targetPath>

<directory>lib/</directory>

<includes>

<include>**/my-jar.jar</include>

</includes>

</resource>

</resources>

</build>

生成的xxx-jar-with-dependencies.jar中,将会包含lib目录以及my-jar.jar,并且能够被在执行的时候被找到。

有的时候这种方法会实效,比如JDBCDriver在声明的时候Class.forName(xxx.Driver)就会说找不到类,用下面两种方法就可以。

2. 将jar包安装到本地repository中

mvn install:install-file -Dfile=my-jar.jar -DgroupId=org.richard -DartifactId=my-jar -Dversion=1.0 -Dpackaging=jar

3. 添加 in project repository,在新机器上执行时就不用运行mvn install:install-file命令了

<repository>

<id>in-project</id>

<name>In Project Repo</name>

<url>file://${project.basedir}/lib</url></repository>

<dependency>

<groupId>org.richard</groupId>

<artifactId>my-jar</artifactId>

<version>1.0</version>

</dependency>

你的jar包及路径必须严格遵循格式:

/groupId/artifactId/version/artifactId-verion.jar

本例中: lib/org/richard/my-jar/1.0/my-jar-1.0.jar

来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
相关文章
    无相关信息
栏目更新
栏目热门