Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven目标未附加到阶段_Java_Maven_Jetty_Lifecycle - Fatal编程技术网

Java Maven目标未附加到阶段

Java Maven目标未附加到阶段,java,maven,jetty,lifecycle,Java,Maven,Jetty,Lifecycle,我正在尝试运行一些Selenium测试,但将jetty的启动附加到maven的预集成测试阶段是行不通的。因此,我试图调查这个问题,似乎总体上Maven没有在我指定的阶段执行我的目标 我找到了这个例子并复制了它。我创建了一个插件,当我显式调用它时,它可以正常工作。但是当我尝试将它附加到验证阶段并运行mvn验证时,我没有看到“Hi there!!!”输出。它只是向我展示了构建成功,而没有调用howdy world目标:/(这与我的jetty没有在集成测试阶段启动一致) 当验证阶段通过时,我如何运行此

我正在尝试运行一些Selenium测试,但将jetty的启动附加到maven的预集成测试阶段是行不通的。因此,我试图调查这个问题,似乎总体上Maven没有在我指定的阶段执行我的目标

我找到了这个例子并复制了它。我创建了一个插件,当我显式调用它时,它可以正常工作。但是当我尝试将它附加到验证阶段并运行mvn验证时,我没有看到“Hi there!!!”输出。它只是向我展示了构建成功,而没有调用howdy world目标:/(这与我的jetty没有在集成测试阶段启动一致)

当验证阶段通过时,我如何运行此目标

以下是我的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>com.maventest</groupId>
<artifactId>aproject</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>aproject</name>
<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
        <scope>test</scope>
    </dependency>
</dependencies>
<build>
<pluginManagement>
    <plugins>
        <plugin>
            <groupId>com.maventest</groupId>
            <artifactId>maven-howdy-plugin</artifactId>
            <version>1.0-SNAPSHOT</version>
            <executions>
                <execution>
                    <goals>
                        <goal>howdy-world</goal>
                    </goals>
                    <phase>validate</phase>
                </execution>
            </executions>
        </plugin>
    </plugins>
    </pluginManagement>
</build>

4.0.0
com.maventest
项目
罐子
1.0-快照
项目
朱尼特
朱尼特
3.8.1
测试
com.maventest
maven howdy插件
1.0-快照
你好,世界
验证

你必须这样做:


4.0.0
org.eclipse.m2e
生命周期映射
1.0.0
com.maventest
maven howdy插件
[1.0.0,)
你好,世界
com.maventest
maven howdy插件
1.0-快照
com.maventest
maven howdy插件
你好,世界
验证

pluginManagement
部分仅用于定义插件的版本和配置,但它不会在生命周期内真正执行这些插件。

非常感谢!这很管用!但奇怪的是,我在eclipse中的执行标记处出错,而它不在pluginManagement中,它说:“生命周期配置未涵盖插件执行:com.maventest:maven howdy Plugin:1.0-SNAPSHOT:howdy world(执行:默认,阶段:验证)“这是由m2e插件而不是Maven提供的。为此,您应该在这里查看:这告诉我使用导致问题的插件管理。我是否应该忽略此eclipse错误?我已使用m2e配置增强了我的答案。