gpt4 book ai didi

liferay - 如何为Liferay Portlet项目的Gradle ant.importBuild类路径添加ECJ?

转载 作者:行者123 更新时间:2023-12-03 03:16:31 25 4
gpt4 key购买 nike

我试图围绕Liferay Portlet Ant Build创建一个gradle构建。我正在使用Gradle进行依赖性管理和管理其他非liferay部件。我需要从Gradle调用一些Liferay Ant构建。我正在尝试使用ant.importBuild导入Ant build.xml。在此过程中,Gradle会引发异常,因为Ant构建会查找不在类路径中的ECJ。

我已经看过例如Liferay Gradle构建以及如何将ECJ添加到ant.importBuild类路径,如下所示(这仍然引发相同的异常)。

Task cannot continue because ECJ is not installed.
ECJ was automatically installed. Please rerun your task.
at org.apache.tools.ant.ProjectHelper.addLocationToBuildException(ProjectHelper.java:568)
at org.apache.tools.ant.taskdefs.ImportTask.importResource(ImportTask.java:239)

有人对此有解决方案吗?我是新来的。
apply plugin: 'java'
ant.importBuild 'build.xml'
configurations { jdt }
dependencies { jdt "org.eclipse.jdt:ecj:3.6.1" }
compileJava {
doFirst {
ClassLoader antClassLoader =org.apache.tools.ant.Project.class.classLoader
configurations.jdt.each { File f ->
antClassLoader.addURL(f.toURI().toURL())
}
}
}

最佳答案

我发现无法解决gradle和ECJ最初的问题,因此我将保留此问题。

解决方法称为系统 Ant 。显然,这假定您已经在路径上安装了ant。

def antExec(target){
tasks.create(name: "ant$target", type: Exec) {
executable 'ant'
args target
}
tasks."ant$target".execute()
}

并从任务中调用它
antExec('deploy')

关于liferay - 如何为Liferay Portlet项目的Gradle ant.importBuild类路径添加ECJ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19423167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com