使用来自 bintray 的原型时,Maven 报告 'The desired archetype does not exist'

Maven reports 'The desired archetype does not exist' when using archetype from bintray

首先,我将原型安装到我的本地存储库:

mvn dependency:get \
   -Dartifact=org.teavm.flavour:teavm-flavour-application:0.1.0-dev-8 \ 
   -DremoteRepositories=teavm::::https://dl.bintray.com/konsoletyper/teavm

二、我运行原型生成:

mvn -DarchetypeCatalog=local \
  -DarchetypeGroupId=org.teavm.flavour \
  -DarchetypeArtifactId=teavm-flavour-application \
  -DarchetypeVersion=0.1.0-dev-8 \
  archetype:generate

并得到以下错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:3.0.0:generate
(default-cli) on project standalone-pom: The desired archetype does not exist 
(org.teavm.flavour:teavm-flavour-application:0.1.0-dev-8) -> [Help 1]

当我从源构建项目并生成 SNAPSHOT 原型时,一切正常。

是我做错了什么,还是 Maven 中的错误?有解决方法吗?

请前往https://bintray.com/konsoletyper/teavm/teavm-flavour-dev

然后点击设置!

然后选择:使用 Maven 解析工件

将此部分复制到您的设置中 xml(通常位于 /Users/os-username/.m2/settings。xml 见下文):

<profiles>
        <profile>
            <repositories>
                <repository>
                    <snapshots>
                        <enabled>false</enabled>
                    </snapshots>
                    <id>bintray-konsoletyper-teavm</id>
                    <name>bintray</name>
                    <url>http://dl.bintray.com/konsoletyper/teavm</url>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                    <snapshots>
                        <enabled>false</enabled>
                    </snapshots>
                    <id>bintray-konsoletyper-teavm</id>
                    <name>bintray-plugins</name>
                    <url>http://dl.bintray.com/konsoletyper/teavm</url>
                </pluginRepository>
            </pluginRepositories>
            <id>bintray</id>
        </profile>
    </profiles>
    <activeProfiles>
        <activeProfile>bintray</activeProfile>
    </activeProfiles>

然后再次尝试第二个命令。

settings.xml:

settings.xml 文件可能存在两个位置:

Maven 安装:${maven.home}/conf/settings.xml

一个用户的安装:${user.home}/.m2/settings.xml

https://maven.apache.org/settings.html

我遇到了同样的问题并通过添加插件“Maven Archetype Catalogs”来修复它,该插件可以获取外部原型目录文件。

点击 ⌘、(macOS) 或 Ctrl+Alt+S (Windows/Linux) 转到 首选项,然后点击 插件 并寻找 Maven 原型目录。