首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >扩充maven编译任务

扩充maven编译任务
EN

Stack Overflow用户
提问于 2013-03-06 21:04:32
回答 1查看 59关注 0票数 0

在Maven中,使用编译器插件,我们可以

代码语言:javascript
运行
复制
mvn compile

并编译项目。我需要的是编译该项目,并做一些其他事情。

例如,在ANT中,我可以这样做:

代码语言:javascript
运行
复制
public class Main extends Javac13 {
    @Override
    public boolean execute() throws BuildException {
        System.out.println("Main::execute");
        attributes.log("Using modern compiler", Project.MSG_VERBOSE);
        Commandline cmd = setupModernJavacCommand();

        try {
            int result = com.sun.tools.javac.Main.compile(cmd.getArguments());
            return result == 0;
        } catch (Exception ex) {
            if (ex instanceof BuildException) {
                throw (BuildException) ex;
            } else {
                throw new BuildException("Error starting modern compiler", ex, location);
            }
        }
    }

    @Override
    public void setJavac(Javac javac) {
        System.out.println("Main::setJavac " + javac);
        super.setJavac(javac);
    }
}

以这种方式启动它:

代码语言:javascript
运行
复制
 ant -Dbuild.compiler=com.moc.Main ...

上面的类变成了编译器,我可以使用ANT提供给我的命令行做任何我想做的事情。而且,最棒的是我不需要接触build.xml文件。我只需要设置一个系统属性。

在Maven中有这样的东西吗?

EN

回答 1

Stack Overflow用户

发布于 2013-03-07 01:16:25

你可以看看我刚才搞大的system-properties-maven-plugin。它允许您在pom.xml中定义系统属性。看一看USAGE文件。

该插件有两个目标--一个用于设置属性(set),另一个用于将它们恢复到原来的状态(reset)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15248112

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档