Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.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插件:pom中配置中的参数未传递_Java_Maven - Fatal编程技术网

Java Maven插件:pom中配置中的参数未传递

Java Maven插件:pom中配置中的参数未传递,java,maven,Java,Maven,我遵循Apache的Java插件开发指南。 我想按照说明使用标记从pom向插件传递参数,但插件没有收到这些参数 这是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

我遵循Apache的Java插件开发指南。 我想按照说明使用
标记从pom向插件传递参数,但插件没有收到这些参数

这是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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.iznogoud</groupId>
  <artifactId>myPlugin-maven-plugin</artifactId>
  <version>1.0</version>
  <name>My First Plugin</name>
  <packaging>maven-plugin</packaging>

    <properties>
        <maven.version>3.6.3</maven.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.annotations.version>3.6.0</maven.annotations.version>
    </properties>
 
  <dependencies>
    <dependency>
      <groupId>org.apache.maven</groupId>
      <artifactId>maven-plugin-api</artifactId>
      <version>${maven.version}</version>
    </dependency>
 
    <dependency>
      <groupId>org.apache.maven.plugin-tools</groupId>
      <artifactId>maven-plugin-annotations</artifactId>
      <version>${maven.annotations.version}</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>
  
  
  <build>
    <plugins>
      <plugin>
        <groupId>com.iznogoud</groupId>
        <artifactId>myPlugin-maven-plugin</artifactId>
        <version>1.0</version>
        <configuration>
            <greeting>Greetings, carbon unit.</greeting>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
从命令行传递参数确实有效,例如:

mvn com.iznogoud:myPlugin-maven-plugin:1.0:sayhi "-Dgreeting=hello from command line"
使所需参数也起作用。当我设置required时,maven抱怨说除非我在命令行上传递参数,否则没有给出参数

在Windows10、JDK11上使用Maven 3.6.3,所有指令都来自命令行

如何让
工作?谢谢,非常感谢

更新:如果我使用
。。。而不是
中的
,它可以工作_问候语是Java变量的名称,所以ok是有意义的,但是这里的命名规则是什么?哦,而且_问候语在命令行上不起作用

mvn com.iznogoud:myPlugin-maven-plugin:1.0:sayhi "-Dgreeting=hello from command line"