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

Maven 2 Maven:如何在离线模式下安装插件,maven-2,Maven 2,我坐在防火墙后面,因此maven无法连接到中央存储库(下面给出了错误消息) 但是,我可以通过HTTP连接到internet 如何在离线模式下安装maven插件(如archetype)(即在浏览器中下载一些文件,然后通过执行一些命令来安装插件) 提前谢谢 德米特里 注:以下是错误信息: E:\>mvn archetype:generate -DarchetypeGroupId=com.vaadin -DarchetypeArtifactId=vaadin-archetype-clean -

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

但是,我可以通过HTTP连接到internet

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

提前谢谢

德米特里

注:以下是错误信息:

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] ------------------------------------------------------------------------
我坐在防火墙后面,因此maven无法连接到中央存储库(下面给出了错误消息)。但是,我可以通过HTTP连接到Internet

也许你应该澄清一下,因为Maven也使用HTTP。如果通过某种代理进行连接,则可以通过在
~/.m2/settings.xml
中声明代理来配置Maven。看

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

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

  • 配置Maven以访问Internet(如果可能)~或~
  • 在专用计算机上设置公司存储库(如),与管理员一起查看如何允许它访问Internet),并配置Maven客户端以使用它~或~
  • 将“预填充”本地存储库从现有计算机复制到您的计算机,并脱机运行maven(具有所有这意味着的限制)~或者~
  • 不要使用Maven

如果您不能使用代理,那么您应该像Pascal所说的那样下载插件的所有依赖项。最简单的方法

使用具有正常/代理http连接的计算机下载所有依赖项。Maven依赖插件有一个可以帮助您的目标。mvn依赖项:脱机

例如,我使用它来获取AppFuse教程的maven依赖项

svn公司(此处http)appfuse-demos.googlecode.com/svn/trunk/helloworld (查看源代码) mvn安装(安装并确保其在正常机器中工作) mvn依赖项:脱机(它下载所有内容。帮助:告诉Maven解决此项目依赖的所有内容(依赖项、插件、报告),为脱机做准备。)

之后,在本地m2存储库(~/m2/repository)中,您将找到所需的一切。压缩那个文件夹。把它放进你的内部网。将其解压缩到本地存储库或 公司存储库(nexus、artifactory..)

您现在应该可以使用该插件了


我猜您的安全防火墙不允许您从maven central repo下载。因此,您只需在maven_主页的settings.xml文件中指定镜像即可。如果您的公司有任何存储库,比如nexus,请在settings.xml的mirrors部分提供该nexus的服务器url。
请注意,如果您的公司没有任何回购协议,您必须脱机下载所有依赖项,并在构建服务器的本地存储库中使用mvn install进行安装。

谢谢,配置代理很有帮助!我也有同样的问题。哦,宝贝!祝福你帕斯卡!!:你的名字应该是“Turbo”Pascal!!非常感谢男人!!!