Tag: gradle

在Gradle中,如何生成具有动态依赖关系的POM文件,该文件已解析为所使用的实际版本?

在Gradle中,如何生成具有动态依赖关系的POM文件,该文件已解析为所使用的实际版本? dependencies { testCompile(group: ‘junit’, name: ‘junit’, version: ‘4.+’) } 这是从上面的依赖项生成的。 junit junit 4.+ test 我希望将+解析为如下的应计版本。 junit junit 4.12 test 关于Maven Publishing的Gradle指南章节讨论了这样做,但没有提到如何做。 使用此挂钩,您可以修改POM的任何方面。 例如,您可以使用用于生成构建的实际版本替换依赖项的版本范围。 解 使用Peter Niederwieser的答案中的信息,我创建了一个任务,该任务读取包含动态依赖关系的POM,并使用已解析依赖关系的新pom覆盖它。 /** * Reads and Overwrites POM file resolving dynamic dependencies */ task cleanPom(dependsOn: writeNewPom) << { // Get existing pom file Node xml = new XmlParser().parse(pomFileLocation) // Generate […]

Intellij Idea 13 UI Designer和自动Gradle构建

我使用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 […]

向Gradle添加其他测试套件

我正在尝试将Gradle(1.4)添加到具有多个测试套件的现有项目中。 位于src/test/java的标准unit testing成功运行,但是我无法设置任务来运行位于src/integration-test/java的JUnit测试。 当我运行gradle intTest我得到几个在src/main cannot find symbol类的cannot find symbol错误。 这让我相信依赖关系没有正确设置。 如何设置intTest以便它将运行我的JUnit集成测试? 的build.gradle apply plugin: ‘java’ sourceCompatibility = JavaVersion.VERSION_1_6 sourceSets { integration { java { srcDir ‘src/integration-test/java’ } resources { srcDir ‘src/integration-test/resources’ } } } dependencies { compile(group: ‘org.springframework’, name: ‘spring’, version: ‘3.0.7’) testCompile(group: ‘junit’, name: ‘junit’, version: ‘4.+’) testCompile(group: ‘org.hamcrest’, name: ‘hamcrest-all’, version: ‘1.+’) […]

Maven的档案相当于Gradle

我正在尝试在我的spring boot项目构建中实现一个简单的场景:包括/排除依赖项和打包war或jar,具体取决于环境。 因此,例如,对于环境dev包括devtools和包jar,用于prod包战等。 我知道它不再是基于XML的配置了,我基本上可以在build.gradle中编写if语句,但有没有推荐的实现方法? 我可以声明一些常见的依赖项并将它们引用到单个文件中,而不是创建多个构建文件吗? 是否有基于构建目标环境更改构建配置的最佳实践?

如何通过任务在gradle中设置环境变量?

我有gradle应用程序。 我的主要gradle文件包含一些任务(groovy)。 我需要在启动我的任务时 – 环境变量“LANG”设置encoding = ru_RU.koi8-r(对于windows,linux),并在完成我的任务后 – 环境变量包含初始值(en_US.UTF-8) 。 怎么样? 请帮帮我。

无法使用NetBeans 8.1的Gradle支持插件构建Gradle项目

我开始了一个学习项目,熟悉Gradle,Spring和Vaadin。 到目前为止,我已经在一些Spring指南的帮助下成功创建了基本的CRUDfunction。 现在我想将项目导入NetBeans。 我为NetBeans安装了Gradle Support插件 ,并将我的存储库克隆到一个新的NetBeans项目中。 当我尝试在NetBeans中build或bootRun项目时,它失败了,告诉我无法找到主类。 但是当我使用我加载到存储库中的gradle包装器直接从命令行build或bootRun时,它工作正常。 我在GitHub上研究了Gradle Support插件的wiki的每一页,但找不到与我的问题相关的任何信息。 这是我尝试通过项目的上下文菜单操作Tasks / build / build在NetBeans中运行项目时得到的输出: Executing: gradle :build :compileJava UP-TO-DATE :processResources UP-TO-DATE :classes UP-TO-DATE :findMainClass FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ‘:findMainClass’. > Could not find property ‘main’ on task ‘:run’. * Try: Run with –stacktrace […]

使用Java 8构建Gradle

我正在尝试使用Gradle 1.6构建Java 8项目,但我仍然坚持这个错误: Execution failed for task ‘:ejb:compileJava’ invalid target release: 1.8 JAVA_HOME设置为“D:\ Program Files \ Java \ jdk1.8.0”,build.gradle包含以下行: sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8

‘jvm-1.8’不是’-target’的有效选择

当我尝试制作项目时,IntelliJ会抱怨以下exception。 Error:scalac: ‘jvm-1.8’ is not a valid choice for ‘-target’ Error:scalac: bad option: ‘-target:jvm-1.8′ 但是’gradlew clean install’工作得很好。 项目设置是: gradle版本2.3 scala 2.10和java 4个模块中的3个使用java 1.7(源和目标兼容性),第4个模块具有源和目标兼容性1.8并导致问题。 我有什么想法可以避免这个错误吗? (迁移到java 7不是一个选项,升级scala是)

Spring Boot获取Gradle中包的属性

我试图将我的项目从Maven构建转换为Gradle。 该项目目前使用Spring Boot。 在我目前的maven配置中,我有 com.fasterxml.jackson.datatype jackson-datatype-hibernate4 ${jackson.version} 在上面的代码片段中,jackson.version属性来自Spring Boot pom。 现在,在Gradle中,我正在使用Spring Boot插件,我正在尝试使用下面的代码片段。 buildscript { repositories { mavenCentral() } dependencies { classpath(“org.springframework.boot:spring-boot-gradle-plugin:1.2.4.RELEASE”) }} apply plugin: ‘idea’ apply plugin: ‘spring-boot’ apply plugin: ‘java’ dependencies { compile(“com.fasterxml.jackson.datatype:jackson-datatype-hibernate4”) } 在上面,我期待spring Boot插件插入jackson-hibernate4模块的版本。 但是,这不会发生 有关如何实现这一点的任何想法? 我的目的是在整个项目中使用相同版本的jackson构建。 谢谢!

在IntelliJ IDEA和Gradle上调试时等待用户输入

我有最简单的Java应用程序,只有从命令行执行才能工作。 但是,如果我想通过IntelliJ IDEA 14 Ultimate调试它, System.in.read()部分总是返回-1 ,而不会输入任何内容: import java.io.IOException; public class Main { public static void main(String[] args) throws IOException { System.out.println(“This is a test… Hit [enter] to exit.”); int cha = System.in.read(); System.out.println(“You hit [enter], exiting…”); } } 这是Windows 8.1的某种问题还是IntelliJ IDEA相关? 更新 :我发现只有在通过Gradle( gradlew run )启动应用程序时问题才出现,所以这是Gradle问题。 这是我的build.gradle : apply plugin: ‘java’ apply plugin: ‘application’ […]