如何连接本地archiva存储库并在Eclipse中创建maven项目?
我在我的项目上没有internet访问权限,正在尝试部署archiva并使用它离线创建maven项目。 因此,我下载了ApacheArchiva并将其部署在本地计算机上。 然后,我用这个设置创建了本地存储库。 然后我更改了maven文件夹中的settings.xml如何连接本地archiva存储库并在Eclipse中创建maven项目?,maven,offline,maven-archetype,archiva,Maven,Offline,Maven Archetype,Archiva,我在我的项目上没有internet访问权限,正在尝试部署archiva并使用它离线创建maven项目。 因此,我下载了ApacheArchiva并将其部署在本地计算机上。 然后,我用这个设置创建了本地存储库。 然后我更改了maven文件夹中的settings.xml <?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xm
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>C:/MavenRepository/.m2/repository</localRepository>
<pluginGroups>
</pluginGroups>
<proxies>
</proxies>
<servers>
</servers>
<mirrors>
<mirror>
<id>local.repository</id>
<name>test repo</name>
<url>http://localhost:8888/archiva/repository/local.repository</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
<profiles>
<profile>
<id>local</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<id>local.repository</id>
<name>local.repository</name>
<url>http://localhost:8888/repository/local.repository/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>local.repository</id>
<name>local.repository</name>
<url>http://localhost:8888/repository/local.repository/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
</settings>
C:/MavenRepository/.m2/存储库
本地存储库
测试回购
http://localhost:8888/archiva/repository/local.repository
*
地方的
真的
本地存储库
本地存储库
http://localhost:8888/repository/local.repository/
真的
假的
本地存储库
本地存储库
http://localhost:8888/repository/local.repository/
真的
假的
然后尝试在eclipse中的maven设置中添加原型目录,但显示远程目录为空
.
要获得正确的原型以在eclipse中创建maven项目,我需要做什么?您创建了一个新的maven存储库。它是空的。然后在
settings.xml
中将其定义为镜像。这意味着所有请求(包括针对原型的请求)都将转到一个空存储库
当您尝试使用Maven构建任何东西时,也会发生同样的情况。Maven将尝试从Maven存储库下载大量插件、JAR、POM等,但将失败
你需要在某处连接互联网。例如,您可以将archiva连接到MavenCentral,构建项目,然后关闭连接。或者,您可以在另一台计算机上执行此操作,并将工件从一台archiva复制到另一台archiva。在使用archiva或Nexus创建maven项目之前,您必须为maven进行以下设置
内部的
代理缓存-内部存储库
http://localhost:8080/archiva/repository/internal
*
最后,您可以尝试创建一个maven项目或导入一个maven项目。切勿更改
conf/settings.xml
中的settings.xml
。如果需要新设置,请将settings.xml
放入用户目录中的.m2
文件夹。这就是OP已经做的。老实说,我更改了maven安装目录中的setting.xml文件…我可以将原型添加到本地maven存储库中,并尝试在eclipse中创建项目而不连接到internet吗?可能吗?也许我需要在我的计算机上的.m2文件夹中添加archetype-catalog.xml?你能更喜欢关于将工件从一个archiva复制到另一个archiva的更多信息吗?我应该怎么做?您可以将原型添加到您的本地存储库中,它会起作用,但是这些原型有依赖项,它们本身有依赖项,那些也有依赖项。如果你试图用手去弄清楚,你可能会花两周的时间来复制工件。2.我没有和阿奇瓦打交道的经验。如今,人们大多使用Nexus或Artifactory(两者都有免费版本)。在Nexus2中,您可以将存储目录从一台计算机复制到另一台计算机。在其他存储库中,这通常更加困难。我给你一个警告:很难管理“脱机”Maven存储库,因为每次你更改项目依赖项时,你都需要再次将大量内容从MavenCentral复制到脱机存储库。我试着写一个脚本来计算你需要复制什么,但是它只有90%的正确率,而且通常我会针对离线Maven存储库构建一个项目10次(总是因为缺少一些工件而失败),直到我得到我需要的一切。好吧,所以我们还是需要互联网连接。如果我们创建具有internet访问权限的本地maven存储库,我会从eclipse开始看到maven原型吗?在看到它们之前,我应该采取哪些步骤?您是否建议在直接访问maven存储库的计算机上创建项目,然后将其复制到另一台不访问internet的计算机上,并使用本地存储库?谢谢你的回答,非常感谢。