Maven使项目脱机并在项目文件夹中存储库

时间:2016-07-17 11:00:17

标签: maven

我尝试使我的项目脱机并使用项目内回购构建项目。所以〜/ .m2 /目录在开头是空的。我将以下内容添加到我的poms中:

<repositories>
    <repository>
        <id>project</id>
        <url>file://${basedir}/lib</url>
    </repository>
    <repository>
        <id>central</id>
        <name>Maven Repository Switchboard</name>
        <layout>default</layout>
        <url>http://repo1.maven.org/maven2</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
</repositories>

<pluginRepositories>
    <pluginRepository>
        <id>central</id>
        <name>Maven Plugin Repository</name>
        <url>http://repo1.maven.org/maven2</url>
        <layout>default</layout>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
        <releases>
            <updatePolicy>never</updatePolicy>
        </releases>
    </pluginRepository>
    <pluginRepository>
        <id>project</id>
        <url>file://${basedir}/lib</url>
    </pluginRepository>
</pluginRepositories>

然后我删除了.m2文件夹中的所有内容,并使用该选项在Internet上构建我的项目 -dependency:go-offline 这有效。然后我将.m2 / repository目录中的所有内容复制到项目的lib目录中,并删除.m2 / repository中的内容。现在我断开了与互联网的连接并尝试使用-o选项构建我的项目。这不起作用,我得到以下错误:

[ERROR] Plugin org.apache.maven.plugins:maven-resources-plugin:2.5 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:2.5: The repository system is offline but the artifact org.apache.maven.plugins:maven-resources-plugin:pom:2.5 is not available in the local repository. -> [Help 1]

在我的lib文件夹(in-project-repo)中存在此插件和所有其他插件。 我有一些在互联网上无法获得的消息来源。我将它们复制到我的lib文件夹(in-project-repo),然后在构建项目时将它们复制到本地m2存储库中。所以我想我的in-project-repo正在运作。我不明白这一点。 如果我将内容放在〜/ .m2文件夹中,我可以在没有互联网的情况下构建我的项目。

我希望有人可以帮助我!

请注意

编辑:我使用选项:

-Dmaven.repo.local=/path/to/project/lib clean package -X -o

有更好的方法吗?

0 个答案:

没有答案