在 Java 中使用在线依赖项的最佳方式

Best way to work with online dependencies in Java

首先,抱歉我的英语不好。

好吧,我有一个 Minecraft 服务器,对于那些不知道的人,它可以与 Java 插件一起使用。要创建插件,需要导入依赖项(运行服务器的 jar)。

由于我有时需要修改这些依赖项,所以我必须将它们保存在我的 Dropbox 上,因为我与其他开发人员一起工作。

我开始考虑更简单的方法来实现这些目标。经过一些研究后,我发现了有关 maven 的信息,并尝试使用 Artifactory 和 Nexus,但两者都遇到了很多问题:我的 IDE(刚开始使用 Intellij)只是找不到 .jar存储库管理器(也在 Eclipse 和 NetBeans 上验证)。

--------问题从这里开始--------

那么,什么是最好、最简单和最简单的在线依赖项的方法(我有一些 Linux CentOS 服务器来托管它们)以便能够导入它们并保持更新(即使它在本地缓存)而不需要处理文件?

例如,最简单的方法(不是最好的方法)是在此处创建一个 GIT 存储库 - https://bitbucket.org/ 并将您的源代码与您需要的所有 JAR 放在一起。要构建您的项目,您可以使用 maven/gradle/ant+ivy.

Artifactory 或 Nexus 是执行此操作的好方法。

您需要配置 IDE(s) 以指向您的存储库或相应地调整您的 Maven pom.xml 文件,因为您的存储库不是 Maven 的默认存储库(称为 Maven Central ,可通过网络浏览器访问 http://search.maven.org/)。

这是我使用的 pom.xml 文件的一个略微编辑的摘录:

<repositories>
    <repository>
        <id>fooco-repositories</id>
        <url>https://build1.fooco.com/nexus/content/groups/public/</url>
        <releases>
            <enabled>true</enabled>
            <updatePolicy>never</updatePolicy>
        </releases>
        <snapshots>
            <enabled>true</enabled>
            <updatePolicy>daily</updatePolicy>
        </snapshots>
    </repository>
</repositories>

参见 http://maven.apache.org/guides/introduction/introduction-to-repositories.html "Using the Internal Repository"

这可能有点矫枉过正 - 但正如上面所建议的,设置一个 Nexus 服务器可能就是您想要的。

很可能您正在寻找的工件不会消失,但配置的关键是您的 "settings.xml",通常您可以在这里找到它:

"~/.m2/setting.xml"

在那里,您可以拥有上面列出的 "repositories" 节以及允许您设置 user/pass 组合以部署到不同存储库的 "servers" 节。

如果您在互联网上共享,您可能想要强化您的 Nexus 服务器,开启 on/up 身份验证等,这超出了本文的范围...