如何将一个jar包、源代码和Javadoc添加到本地Maven仓库?

38

我想将最新版本的JGoodies Forms(1.5.0)添加为依赖项,但主要仓库中找不到比1.0.5更新的版本,所以如果我理解正确,最好的办法是将其添加到我的本地仓库。

当我从网站下载它时,得到一个包含javadoc文件、源代码和只有类文件的jar文件的ZIP文件。

如何将其添加到我的本地Maven仓库,使Eclipse能够看到源代码和Javadoc? (我刚开始使用Maven)


3
请注意,自1.0.7版本以来,groupId已更改为com.jgoodies ,而不再是jgoodies,您可以从在线存储库中下载最新版本1.2.1。 - yorkw
3个回答

50

更新:虽然这是被接受的答案,请检查Emmanuel Bourg下面的答案 - 他的答案可能是你想要的,特别是如果你有快照版本。


你可以使用Maven部署插件来实现这个目的。它有一个目标可以将单个文件部署到任何存储库中。 对于jar本身:

mvn deploy:deploy-file \
    -DgroupId=com.yourname.jgoodies \
    -DartifactId=jgoodies-forms \
    -Dversion=1.50 \
    -Dfile=/path/to/jgoodies-1.50.jar \
    -Dpackaging=jar \
    -Durl=file://path/to/your/local/repository 

关于来源:

mvn deploy:deploy-file \
    -DgroupId=com.yourname.jgoodies \
    -DartifactId=jgoodies-forms \
    -Dversion=1.50 \
    -Dfile=/path/to/jgoodies-sources.jar \
    -Dpackaging=jar \
    -Durl=file://path/to/your/local/repository \
    -Dclassifier=sources

关于javadoc:

mvn deploy:deploy-file \
    -DgroupId=com.yourname.jgoodies \
    -DartifactId=jgoodies-forms \
    -Dversion=1.50 \
    -Dfile=/path/to/jgoodies-javadoc.jar \
    -Dpackaging=jar \
    -Durl=file://path/to/your/local/repository \
    -Dclassifier=javadoc
请注意,这将生成一个标准的POM文件,因此您不会自动获取JGoodies的依赖项(如果有任何依赖项),而必须在项目中手动指定它们。

感谢您对每个具体语句进行详细说明。 - Paul Walker
13
你可以使用"-Djavadoc"和"-Dsources"参数来执行相同的操作,只需一个命令即可。 - Emmanuel Bourg

39

这是一条命令的语法,可以用于同时部署二进制文件、源代码和Javadoc:

mvn deploy:deploy-file \
    -DgroupId=com.jgoodies \
    -DartifactId=jgoodies-forms \
    -Dversion=1.6.0 \
    -Dfile=jgoodies-forms-1.6.0.jar \
    -Dsources=jgoodies-forms-1.6.0-sources.jar \
    -Djavadoc=jgoodies-forms-1.6.0-javadoc.jar \
    -Durl=file://path/to/your/local/repository

1
这是最好的答案。 - WestCoastProjects
2
如果你正在进行快照而不是发布,那么用这种方式而不是另一种方式做是特别重要的,因为否则源代码jar和类jar的快照ID将会不同,Maven 将无法知道源代码对应哪些类。 - fragorl
2
更新了我的答案,指向Emmanuel的答案,因为他的做法更好。 - Jan Thomä

4

使用以下迷你指南安装已下载的jar文件:

http://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html

您应该输入以下命令来安装jgoodies-form-1.5.0.jar:

mvn install:install-file -Dfile=<path-to-file>/jgoodies-form-1.5.0.jar \ 
-DgroupId=jgoodies -DartifactId=forms -Dversion=1.5.0 -Dpackaging=jar

不要忘记对jgoodies-commons进行相同的操作。
为了让您能够访问源代码和上下文javadoc,您可以选择以下方式之一:
- 解压jgoodies form zip文件并使eclipse指向src文件夹 - 通过将src目录放入其中生成一个jgoodies-form-1.5.0-src.jar文件,并以与jar文件相同的方式将其安装到本地repo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接