Maven无法使用原型:如果本地存储库从.m2更改,则生成

问题描述 投票:0回答:4

我面临一个奇怪的问题。我在settings.xml编辑了Maven M2_HOME/conf文件,并希望将这些罐子下载到{users.home}/.m2以外的地方。

我已将<localRepository>G:/m2Repo</localRepository>粘贴到settings.xml

现在当我输入mvn archetype:generate时,我收到以下错误:

[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] The plugin 'org.apache.maven.plugins:maven-archetype-plugin' does not exist or no valid version could be found
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.lifecycle.LifecycleExecutionException: The plugin 'org.apache.maven.plugins:maven-archetype-plugin' does not exist or no valid version could be found
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLifecycleExecutor.java:1569)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.getMojoDescriptor(DefaultLifecycleExecutor.java:1851)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.segmentTaskListByAggregationNeeds(DefaultLifecycleExecutor.java:462)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:175)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
        at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:60)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: org.apache.maven.plugin.version.PluginVersionNotFoundException: The plugin 'org.apache.maven.plugins:maven-archetype-plugin' does not exist or no valid version could be found
        at org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVersion(DefaultPluginVersionManager.java:229)
        at org.apache.maven.plugin.version.DefaultPluginVersionManager.resolvePluginVersion(DefaultPluginVersionManager.java:91)
        at org.apache.maven.plugin.DefaultPluginManager.verifyPlugin(DefaultPluginManager.java:179)
        at org.apache.maven.plugin.DefaultPluginManager.loadPluginDescriptor(DefaultPluginManager.java:1642)
        at org.apache.maven.lifecycle.DefaultLifecycleExecutor.verifyPlugin(DefaultLifecycleExecutor.java:1540)
        ... 15 more
[INFO] ------------------------------------------------------------------------

可能是什么问题呢?

maven-2 maven-archetype
4个回答
2
投票

如果工件或元数据损坏,就会发生这种情况。尝试删除所有版本的maven-archetype-plugin(包括元数据和pom文件)来清理本地仓库。

然后再次执行archetype:generate


0
投票

通过在settings.xml中删除localRepository的条目来解决该问题。再次开始生成原型将下载的工件移动到我们想要的地方G:/ m2Repo再次开始生成工件。现在罐子等会自动下载到新的地方

我能想到的问题是我也删除了{users.home} /.m2文件夹,这阻止了下载。


0
投票

我有一个类似的问题。

环境:

`OS`: Mac Seirra 10.12.6.  
`Java version` :1.8.0_144
`Maven` 3.5.4

方案:

rm -rf ~/.m2/repository/org/apache/maven/plugins/maven-archetype-plugin/

-1
投票

我的错误是:

(Qazxswpoi):

插件在任何插件存储库中都找不到

方案:

http://mirrors.ibiblio.org/pub/mirrors/maven2
© www.soinside.com 2019 - 2024. All rights reserved.