猿问

Netbeans 和 Maven,如何阻止 Maven 尝试下载?

我正在尝试使用 Netbeans 构建现有项目。IDE 和插件已安装在无法访问 Internet 的系统上。

当我尝试在 IDE 中构建一个简单的项目时,Mavan 尝试连接到 Internet 以下载“exec-maven-plugin-1.2.1.pom”,因为这失败了,整个构建过程都失败了。

目前我已经创建了一个非常简单的应用程序,它只有一行:

    public static void main(String[] args) {
            System.out.println("Hello Simon!");
    }


江户川乱折腾
浏览 292回答 2
2回答

偶然的你

您可以使用 -o 开关在离线模式下运行 maven。这样 maven 只会查找本地 m2 文件夹。(我假设您在 m2 文件夹中拥有项目所需的所有依赖项和插件。)示例命令mvn -o package如果您想从 netbeans 中使用它,您必须创建自定义操作。以下链接说明了如何完成。您应该选择Clean and Build project并Actions添加-o到Execute Goals部分的开头。https://blogs.oracle.com/geertjan/configuring-running-specific-methods-in-maven-projects-in-netbeans-ide附带说明:如果您要以这种方式在团队中开发应用程序,我建议设置一个内部存储库管理器。有多种免费替代品,例如 Artifactory 和 Sonatype Nexus。https://maven.apache.org/guides/introduction/introduction-to-repositories.html

UYOU

请注意,在“没有 Internet”的情况下使用 Maven 进行构建并非易事。我们是通过以下方式做到的:设置一个连接到 Internet 的 Nexus 并针对它构建一个项目。为了获得插件的固定版本,我们设置了一个父 pom 供每个 maven 项目使用。将缓存的工件从在线 Nexus 复制到 Nexus 的离线实例。现在您可以将您的 Maven 与这个离线 Nexus 连接起来,然后您就可以构建您的项目了。确保再次使用父 pom,以便修复所有插件版本。请注意,如果您“只是离线构建项目”,则构建将失败,因为“缺少插件 XY”。当您下载此插件并将其安装到本地存储库或离线 Nexus 时,下一个插件肯定会丢失。等等。等等。即使是没有任何真正 Java 代码的最小 Maven 项目也需要来自 MavenCentral 的 100 多个文件才能正常运行。
随时随地看视频慕课网APP

相关分类

Java
我要回答