Maven:如何在离线模式下安装插件

DP_*_*DP_ 5 maven-2

我坐在防火墙后面,因此maven无法连接到中央存储库(错误消息在下面给出).

但是,我可以通过HTTP连接到互联网.

如何在离线模式下安装maven插件(例如archetype)(即在浏览器中下载一些文件,然后通过执行一些命令安装插件)?

提前致谢

德米特里

PS:这是错误消息:

E:\>mvn archetype:generate -DarchetypeGroupId=com.vaadin
 -DarchetypeArtifactId=vaadin-archetype-clean -DarchetypeVersion=LATEST -DgroupI
d=at.swdev -DartifactId=pcc -Dversion=1.0 -Dpackaging=war
[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO] org.apache.maven.plugins: checking for updates from central
[WARNING] repository metadata for: 'org.apache.maven.plugins' could not be retri
eved from repository: central due to an error: Error transferring file: Connecti
on refused: connect
[INFO] Repository 'central' will be blacklisted
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] The plugin 'org.apache.maven.plugins:maven-archetype-plugin' does not exi
st or no valid version could be found
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1 second
[INFO] Finished at: Thu Jul 22 15:17:00 CEST 2010
[INFO] Final Memory: 1M/15M
[INFO] ------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

Pas*_*ent 7

我坐在防火墙后面,因此maven无法连接到中央存储库(错误消息在下面给出).但是,我可以通过HTTP连接到Internet.

也许你应该澄清一点,因为Maven也使用HTTP.如果你通过某种代理连接,你可以通过在你的代理中声明代理来配置Maven ~/.m2/settings.xml.请参阅配置代理.

如何在离线模式下安装maven插件(例如archetype)(即在浏览器中下载一些文件,然后通过执行一些命令安装插件)?

您可以使用install:install-file目标在本地存储库中安装任何jar (请参阅" 用法"页面).但这只是故事的一小部分,您还需要安装插件的依赖项.然后是依赖关系的依赖关系.这将很快成为一个真正的噩梦和无法管理的任务(Maven正是试图解决).所以要么:

  • 如果可能〜或〜,请将Maven配置为访问Internet
  • 在专用计算机上设置公司存储库(如Nexus),与管理员一起查看如何允许它访问Internet)并配置您的Maven客户端以使用它〜或〜
  • 将"预先填充的"本地存储库从现有计算机复制到您的计算机并离线运行maven(具有所示的所有限制)〜或〜
  • 不要使用Maven