我想编写一个maven插件(扩展)来实现javascript项目的生命周期,因此可以编译带有这样的pom.xml的项目:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org
<modelVersion>4.0.0</modelVersion>
<groupId>de.ailis.maven.javascript</groupId>
<artifactId>demo</artifactId>
<version>1.0.0-SNAPSHOT</version>
<name>Maven JavaScript Demo Project</name>
<packaging>javascript</packaging>
<build>
<plugins>
<plugin>
<groupId>de.ailis.maven.plugins</groupId>
<artifactId>maven-javascript-plugin</artifactId>
<version>1.0.0-SNAPSHOT</version>
<extensions>true</extensions>
</plugin>
</plugins>
</build>
</project>
我已经成功创建了一个带有components.xml
文件的插件,该文件定义了生命周期,因此我可以在各个阶段调用自己的Mojos。但是,只要我可以更改某些默认值,默认mojos就足够了。例如,我想为Maven Resources Plugin指定自定义outputDirectory
,以便将JavaScript资源复制到target/classes/script-resources
而不是target/classes
。这可以在插件中完成,而无需复制整个ResourcesMojo类并更改属性的默认值吗?
答案 0 :(得分:0)
魔:
public class MyMojo extends AbstractMojo
{
private String foo; //filePath
public void execute()
throws MojoExecutionException
{
...
writeFile(foo)
...
}
}
的pom.xml
<plugin>
<groupId>de.ailis.maven.plugins</groupId>
<artifactId>maven-javascript-plugin</artifactId>
<version>1.0.0-SNAPSHOT</version>
<configuration>
<foo>script-resources</foo>
</configuration>
</plugin>