【发布时间】:2014-06-12 13:14:26
【问题描述】:
我使用 Intellij UI Designer 为项目创建表单。当我使用想法构建时一切正常,因为它会为我处理编译表单,但由于我们最近切换到使用 Gradle 进行构建,它还无法生成可执行的 jar 文件。
我的 google-fu 引导我阅读了几篇文章,这些文章解释了编译需要一个 ant 脚本(例如 link、link2、link3,而我最后关注的是:link4)
我的项目是一个多模块设置。
root build.gradle
subprojects {
apply plugin: 'java'
apply plugin: 'idea'
repositories {
mavenCentral()
}
}
supproject build.gradle
apply plugin:'application'
mainClassName = "dk.OfferFileEditor.OfferFileEditorProgram"
configurations {
antTask
}
dependencies {
compile 'org.json:json:20140107'
compile project(":Shared:HasOffers Api")
//dependencies for java2c
antTask files('../../lib/javac2-13.1.1.jar', '../../lib/asm4-all-13.1.1-idea.jar', '../../lib/forms_rt-13.1.1.jar')
antTask group: 'org.jdom', name: 'jdom', version: '1.1'
}
task compileJava(overwrite: true, dependsOn: configurations.compile.getTaskDependencyFromProjectDependency(true, 'jar')) {
doLast {
println 'using java2c to compile'
project.sourceSets.main.output.classesDir.mkdirs()
ant.taskdef name: 'javac2', classname: 'com.intellij.ant.Javac2', classpath: configurations.antTask.asPath
ant.javac2 srcdir: project.sourceSets.main.java.srcDirs.join(':'),
classpath: project.sourceSets.main.compileClasspath.asPath,
destdir: project.sourceSets.main.output.classesDir,
source: sourceCompatibility,
target: targetCompatibility,
includeAntRuntime: false
}
}
但即使编译成功,当我第一次尝试访问 UI 设计器创建的字段之一时,也会引发 Nullpointer 异常。所以有些东西没有正确编译。
我可能遗漏了一些设置,但在论坛和谷歌上倾注了几个小时都没有成功后,我仍然没有找到任何解决方案。
【问题讨论】:
-
我按照described here 做了,它成功了
标签: java ant intellij-idea gradle