maven配置标记值';s在java代码中设置null如果;插件";标签“添加到内部”;插件管理“;(看下面的代码)

maven配置标记值';s在java代码中设置null如果;插件";标签“添加到内部”;插件管理“;(看下面的代码),java,maven,Java,Maven,pom.xml <pluginManagement> <plugins> <plugin> <groupId>com.example.groupid</groupId> <artifactId>artifact-example-maven-plugin</artifactId>

pom.xml

<pluginManagement>
        <plugins>
            <plugin>
                <groupId>com.example.groupid</groupId>
                <artifactId>artifact-example-maven-plugin</artifactId>
                <version>1.0-SNAPSHOT</version>

                <executions>
                    <execution>
                        <id>mojo-plugin-id</id>
                        <goals>
                            <goal>example-gole</goal>
                        </goals>
                        <phase>integration-test</phase>
                        <configuration>
                            <employee>
                                <firstName>MyFirstName</firstName>
                                <middleName>MyMiddleName</middleName>
                                <lastName>MyLastName</lastName>
                            </employee>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </pluginManagement>
公共类ExampleMojo扩展了AbstractMojo{

@Parameter(property = "employee")
private Employee employee; 

@Override
public void execute() throws MojoExecutionException {
    getLog().info(employee);
}
}

execute方法向所有属性显示空输出

Employee.java

@Mojo(name = "example-gole")
public class Employee implements Serializable {

private static final long serialVersionUID = 1L;

private String firstName;
private String middleName;
private String lastName;

// consider constructor, getter and setter, hashcode, eqauls, toString is available
}

更多信息


创建定制的maven插件,上面的java类来自maven插件,但是上面的pom.xml配置来自它的调用者。

它现在适合我了。使用“插件”“配置”标记而不是“执行”“配置”标记

<pluginManagement>
<plugins>
    <plugin>
        <groupId>com.example.groupid</groupId>
        <artifactId>artifact-example-maven-plugin</artifactId>
        <version>1.0-SNAPSHOT</version>

        <executions>
            <execution>
                <id>mojo-plugin-id</id>
                <goals>
                    <goal>example-gole</goal>
                </goals>
                <phase>integration-test</phase>
            </execution>
        </executions>

        <configuration>
            <employee>
                <firstName>MyFirstName</firstName>
                <middleName>MyMiddleName</middleName>
                <lastName>MyLastName</lastName>
            </employee>
        </configuration>

    </plugin>
</plugins>

com.example.groupid
工件示例maven插件
1.0-快照
mojo插件id
示例gole
集成测试
我的名字
我的名字
MyLastName