Не могу создать проект Maven из моего архетипа

Я разрабатываю проекты в Eclipse, и я использую Maven, поэтому я создал новый архетип, используяArchetype" maven-archetype-archetype", но как только я пытаюсь создать новый проект с моим новым архетипом, я получить следующее сообщение об ошибке в Eclipse:

The META-INF/maven/archetype.xml descriptor cannot be found.

Есть идеи, в чем может быть причина?

Обновить:

Мой файл archetype.xml:

<archetype>
    <id>test-archetype</id>
    <sources>
        <source>src/</source>
    </sources>
    <testSources>
        <source>test/</source>
    </testSources>
</archetype>

Мой pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>$my.group.id</groupId>
    <artifactId>$test-archetype</artifactId>
    <version>$0.0.1</version>


    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

</project>

Структура папок выглядит так:

archetype
|-- pom.xml
`-- src
    `-- main
        `-- resources
            |-- META-INF
            |   `-- maven
            |       `--archetype.xml
            `-- archetype-resources
                |-- pom.xml
                `-- src
                `-- test    

Адам.

5 ответов

Решение

Я попробовал это снова недавно, теперь, когда у меня гораздо больше опыта работы с Maven, и результат был тот же, есть проблема с созданием архетипов, насколько я вижу, возможно, ошибка Eclipse или ошибка конфигурации, но что бы я ни пытался, это не помогло.

У меня была точно такая же проблема, когда Eclipse сообщал, что файл archetype.xml не может быть найден, даже если он существует в правильном месте. Я наконец-то заработал после перезапуска Eclipse. Похоже, что если проект архетипа установлен / развернут в том же сеансе Eclipse, где он используется для создания проекта, он ошибается.

Проблема в том, что вы (или Eclipse), похоже, используете команду "mvn archetype:create" для создания нового проекта, который устарел.

Вместо этого вы должны использовать "mvn archetype:generate"

См. http://maven.apache.org/archetype/maven-archetype-plugin/plugin-info.html

Если вы используете Eclipse, попробуйте использовать Eclipse IAM, у него есть простой мастер и готовое решение для maven, а также хорошая интеграция с eclipse.

Похоже, что это ошибка, связанная с репозиториями Maven в затмении. Возможно, это исправлено в более новых версиях Eclipse.

Вот работа вокруг:

  1. При создании нового архетипа увеличьте версию архетипа (например, с 0.0.1-SNAPSHOT до 0.0.2-SNAPSHOT). После установки mvn новая версия архетипа появится в проектах Workspace, но не в локальном репозитории.

  2. Перестройте индекс в локальном репозитории. Новая версия архетипа теперь появится в локальном репозитории и доступна для использования.

Другие вопросы по тегам