netbeans - 从Gradle构建NetBeans Ant项目

标签 netbeans ant gradle

我正在将我们的构建从Ant转换为Gradle。我们的第一步是添加Gradle构建文件,以便我们可以开始使用Gradle作为构建工具。这使我们可以使用现有的构建脚本来使用Ant进行构建,并将它们随时间转换为Gradle。我只想让Gradle调用现有的Ant构建文件。我们的项目都是NetBeans项目,它们具有build.xml和nbproject / build-impl.xml文件。一些项目需要NetBeans构建属性,可以在〜/ .netbeans / 6.5.1 / build.properties中找到它们。我已将NetBeans user.properties.file属性成功设置为〜/ .netbeans / 6.5.1 / build.properties。

当我用Ant进行构建时,我会调用以下代码:

ant -Duser.properties.file=~/.netbeans/6.5.1/build.properties dist

这将执行dist目标,该目标取决于init目标,而init目标取决于以下列出的目标:
pre-init, init-private, init-userdir, init-user, init-project, do-init, post-init, init-check, -init-taskdefs

上面列出的目标按指定的顺序执行。当我调用“gradle dist”时,它将调用init Ant目标,但随后将以-init-taskdefs开始以相反的顺序执行上面列出的目标。从gradle运行时,没有在-init-taskdefs目标之前在目标中设置的必需属性。

确实,我现在要做的就是使用gradle调用Ant来构建我的项目。最好的方法是什么,因为使用gradle使用Ant build.xml文件进行构建似乎无法正常工作?我必须求助于使用exec吗? (我希望不是)。

最佳答案

我发现尝试将Gradle的Ant与Netbeans项目集成在一起太困难且容易出错。相反,我使用Gradle的exec()命令。下面是一个示例,该示例来自我的代码,该代码构建了一个名为“Common Library”的NetBeans项目。

task commonLibrary {
    doLast {
        ant.echo("Building Common Library")
        exec () {
            workingDir = "../netbeans/nb/CommonLibrary"
            executable = "ant"
            args = ['clean', 'jar']
        }
    }
}

我意识到这不是您想要的答案,但是将其发布为其他人(特别是无法重新构建其build.xml文件的人)的可能解决方案。

关于netbeans - 从Gradle构建NetBeans Ant项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15486753/

相关文章:

java - 如何在没有主类的情况下运行JAVA程序

java - 适用于任何 Java 项目的代码混淆器

java - 尝试运行程序 : Truncated module-info. 类时出现 netbeans 错误

android - 在 Ubuntu 上配置 apache ant 时出错

jenkins - ANT 任务 maxmemory 和通过 jvmarg 设置堆大小之间的区别?

java - 试图找到 Ant 的 javac -source 1.4 参数的来源

android - 无法从 Android Studio 构建

maven-2 - Buildr、Gradle 还是等待 Maven 3?

java.lang.NullPointerException : Attempt to invoke virtual method 'java.io.File com.parse.ParsePlugins.getParseDir()' on a null object reference. 解析

java - 想要隐藏/删除屏幕菜单栏