2012-02-21 155 views
29

我想添加最新版本的JGoodies Forms(1.5.0)作为依赖项,但是我在主存储库中找不到比1.0.5更新的任何东西,所以如果我理解正确,那么下一个最好的东西我能做的是将其添加到我的本地存储库。如何将jar,源和Javadoc添加到本地Maven存储库?

当我从网站下载它时,我得到一个ZIP文件,其中包含javadoc文件,源代码和jar(仅包含类文件)。

将这个添加到我的本地Maven存储库的过程如何,Eclipse能够看到源和Javadoc? (我只使用Maven刚刚开始)

+3

注意,gourpId以来一直1.0.7变化,从[JGoodies数据](http://mvnrepository.com/artifact/jgoodies/forms)to [com.jgoodies](http://mvnrepository.com/artifact/com.jgoodies/forms),最新版本可以从网上仓库下载​​到1.2.1。 – yorkw 2012-02-22 02:29:08

回答

39

更新:尽管这是接受的答案,请检查下面灵光布尔格的答案 - 他的回答可能是你想做些什么,特别是如果你'有一个快照版本。


你可以使用maven deploy插件。它有一个将单个文件部署到任何存储库的目标。 对于罐子本身:

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的依赖关系(如果有的话)会自动拉取,但必须在项目中手动指定它们。

+0

感谢您详细了解每个特定语句 – 2012-02-28 00:50:36

+12

您可以指定'-Djavadoc'和'-Dsources'参数,以仅使用一个命令执行相同的操作。 – 2012-07-26 21:40:34

3

安装你已经使用这个小指南下载的jar:

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

您应该安装的JGoodies形式-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形成拉链并进行蚀指向src文件夹

  • 产生jgoodies-形式-1.5.0-src.jar通过将src目录中,并在您的本地回购安装它,你做的罐子

+0

关于对jgoodies-commons的依赖的好处。 – 2012-02-28 00:52:25

22

这里以同样的方式是SYNT斧部署二进制的来源和使用一个命令的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 
+0

这是最好的答案。 – javadba 2014-05-27 03:40:29

+2

这样做尤其重要,而不是另一种方式,如果你正在做一个快照而不是一个发布,因为快照ID将不同于源jar与类jar,否则maven不会知道来源对应于类 – fragorl 2014-09-17 04:27:54

+0

更新我的答案指向埃马纽埃尔的,因为他是这样做的更好的方式。 – 2017-05-09 10:07:44

相关问题