5

我试图在 Windows XP 中生成 maven 项目。

我创建了文件夹pom.xml

<project>
    <modelVersion>4.0.0</modelVersion>

    <groupId>selenium.web.driver</groupId>
    <artifactId>OMS_selenium_Test</artifactId>
    <version>1.0</version>

    <packaging>jar</packaging>
    <name>selenium_tests</name>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.0</version>
            <scope></scope>
        </dependency>
    </dependencies>
</project>

打开cmd并进入此文件夹。

运行下一个命令:

C:\Documents and Settings\Admintemp\maven_test>mvn archetype:generate -DgroupId=
selenium.web.driver -DartifactId=OMS_selenium_Test -Dversion=1.0-SNAPSHOT -Dinte
ractiveMode=false

我没有使用这些数据生成项目,而是发现了下一个错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2
.2:generate (default-cli) on project OMS_selenium_Test: Unable to add module to
the current project as it is not of packaging type 'pom' -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureExc
eption

为什么会发生这种情况?也许我想念smt,但我无法弄清楚究竟是什么......

  • 如何解决这个麻烦并用maven生成项目?
4

3 回答 3

9

您的错误是手动创建 POM 文件。当您运行您尝试的命令时,Maven 会自动执行此操作。删除您的 POM 文件并尝试再次运行该命令。

Maven 假设您想将子模块添加到现有的 Maven 项目中。这失败了,因为您现有的 POM 文件是“jar”项目(例如,普通的 Java 代码),而它需要一个“pom”项目。

于 2013-10-23T11:46:45.907 回答
3

当您从运行 mvn archetype:create-from-project 的同一文件夹中运行generate命令时会发生这种情况(或者在这种情况下,您生成的 POM 使 maven 认为这是一个现有项目)。

Ernestas 的回答奏效了,因为他们切换到了不同的文件夹并运行了相同的命令。

于 2014-06-26T02:59:10.073 回答
1

好吧,我尝试了以下命令,它对我有用:

> cd C:\Temp
> mvn archetype:generate -DgroupId=selenium.web.driver -DartifactId=OMS_selenium_Test -Dversion=1.0-SNAPSHOT -DinteractiveMode=false

编辑现在我的项目在:C:\Temp\OMS_selenium_Test

于 2013-10-23T12:10:28.420 回答