使用Gradle在JAR中包含生成的代码

我编写了一个简单的gradle任务来生成旧文件: task generateThrift << { thriftFiles = fileTree(dir: 'src/main/thrift').matching { include '**/*.thrift' } exec { executable = 'thrift' args = ['--gen', 'java:hashcode', '-o', '/tmp', thriftFiles.collect { r

Android Studio启动时出现Gradle错误

每次启动Android Studio时,我都会出现以下错误: Gradle“VertretungsplanProject”项目刷新失败:无法 使用梯度分布获取“IdeaProject”类型的模型 ''. A. 配置项目“:Vertretungsplan”时出现问题。问题 配置项目“:Vertretungsplan”时发生错误。未能通知 项目评估监听器。配置项目时出现问题 “:库:actionbarsherlock”。未能通知项目评估 听众。无法规范化文件的路径 'P:\Projekte\Vert

Gradle 格拉德尔的角色

这可能是个愚蠢的问题。目前在我的公司里,gradle的用法开始出现。我一直在学习gradle的基础知识,并将其用于我的小项目 由于gradle的灵活性,使用范围可能非常广泛。我来自maven,现在我对gradle在我们项目中的作用感到困惑,因为它是一个通用工具 以下是一些在我脑海中闪现问题的用法: Gradle任务被视为CLI子命令。命令行参数作为属性传递。在我看来,该项目可以作为一个普通的java/groovy编写,它使用已经相当成熟的库common cli或args4j(支持帮助、用法等)

Gradle发布多个独立的工件

我有一个使用Gradle和ivy publish插件构建的项目。除了构建一个JAR,build.gradle还执行一个运行任务,该任务执行XmlFileGenerator.main(),生成5个XML文件(称为a、B、C、D和E)。我希望将这些XML文件发布到我们的常春藤存储库中;每个都应该有相同的组和版本,但有不同的模块和不同的文件名,并且每个都应该有自己的ivy.xml,只列出自己 我可以设置已发布文件的文件名,但模块名与项目名保持一致,因此所有XML文件都以相同的模块名发布,而不是以独立的

将fb contrib库与Gradle';s FindBugs插件

是否有可能将图书馆与Gradle的整合?我四处寻找解决方案已经有一段时间了,但到目前为止我还没有找到任何 如果有帮助的话,这是我现在的脚本。这是一项正在进行的工作,但报告生成正确 apply plugin: "findbugs" task findbugs(type: FindBugs) { classes = fileTree(project.rootDir.absolutePath).include("**/*.class"); source = fileTree(pro

如何在gradle中打印当前任务名称

有没有一种方法可以让我获得当前正在执行的任务的详细信息?例如,我想打印正在执行的当前任务的名称,等等 我试过这个: task printMyNameIfYouCan << { println $task.name } 注意:我查过了,但这不是我要看的 task printMyNameIfYouCan { doLast { println name } } task printMyNameIfYouCan { doLast {

Gradle 导入项目时出错

将项目导入eclipse时,我遇到以下错误: 找不到系统Java编译器。确保安装了JDK(不仅仅是JRE)并将JAVA_HOME系统变量配置为指向相应的目录。无法使用梯度分布“”执行生成 正如我检查过的那样,我需要将JAVA_设置为HOME(我的计算机上有JDK),但我不知道怎么做。我有很多类似的问题,我认为最好的解决方案是手动指定JDK位置。为了做到这一点: 将两个文件添加到项目根文件夹 gradle.properties: org.gradle.java.home=C:/Program Fi

Gradle 声纳无法获取测试覆盖范围信息

类似于但不是傻瓜 声纳Qube版本3.7.4 渐变版本2.1 运行gradle sonarRunner生成一个文件test.exec,Sonar会拾取该文件 14:50:28.167 INFO - Analysing D:\projname\build\jacoco\test.exec 14:50:28.265 INFO - No information about coverage per test. 14:50:28.266 INFO - Sensor JaCoCoSensor don

自定义战争任务和在Gradle中应用自定义资源

我希望有基于客户配置的动态WAR任务。我使用配置名称创建了一个数组,并尝试应用自定义行为,如下所示: ext.customerBuilds = ['customer1', 'customer2', 'customer3'] ext.customerBuilds.eachWithIndex() { obj, i -> task "dist_${obj}" (type:War) << { from "etc/customers/${

移动AndroidStudio项目-gradle问题

我正在尝试将AndroidStudio项目从默认工作区位置移动到另一个位置(作为将此项目移动到版本控制的一部分) 我是AndroidStudio的新手(这是我在其中的第一个“真正的”项目),但是当我翻阅文档时,我发现local.properties应该不在版本控制范围内,所以我放弃了它。这修复了我在尝试导入时的第一个错误 但是,现在当我尝试从新位置导入项目时,出现以下错误: The project is using an unsupported version of Gradle. Please

Gradle对分发插件中的distZip任务不做任何操作

我对Gradle的分发插件有问题。我只想用这个插件把我所有的文件捆绑在一起(jar、shell脚本等等) 这是我的身材。格雷德尔: apply plugin: 'eclipse' apply plugin: 'maven-publish' apply plugin: 'distribution' sourceCompatibility = 1.7 targetCompatibility = 1.7 publishing { ... } repositories { ma

Gradle 工件不是从nexus下载的

我已经成功地将快照jar上传到Nexus中。这些将作为时间戳上传到jar名称。我已经在build.gradle中给出了project.version=“SNAPSHOT” 当我试图下载相同的工件时,它失败地说-SNAPSHOT找不到,这是合乎逻辑的,因为JAR是作为_时间戳上传的 如何下载快照工件?您应该添加快照而不是时间戳-可能有多个工件具有相同的快照版本-并通过适当的策略解决工件 请参阅下面的代码: configurations.all { resolutionStrategy {

gradle jacocoTestReport不工作?

我曾尝试使用gradle jacoco插件在spring gradle项目中获得代码覆盖率 build.gradle包含以下内容 apply plugin: "jacoco" jacoco { toolVersion = "0.7.1.201405082137" reportsDir = file("$buildDir/customJacocoReportDir") } jacocoTestReport { reports {

Gradle 类路径发布/导出依赖项/ouat协定无效。不支持项目条目

我正在尝试创建一个类似于此结构的Gradle多项目 ouat-services - ouat-contract - ouat-servicesImpl (web project) 我遵循eclipse示例,将我的ouat services settings.gradle定义为 include "ouat-contract", "ouat-servicesImpl" 在我的ouat servicesImpl构建梯度中,我定义了 dependencies { compile proj

Gradle工具:如何设置环境变量

我有一个自定义插件,我正在编写测试来测试它。为此,我使用gradle工具api(我发现这是推荐的测试方法) 其中一个测试要求我通过设置一些环境变量来运行任务。我如何测试这个。我看不到ProjectConnection提供了设置环境变量的方法 如果必须手动测试,则必须执行以下操作: setenv LRG_REPOS foo gradle verify_lrg -PlrgName=abc 其中,verify_lrg是由我的自定义插件添加的任务 目前为了解决这个问题,我正在使用ProcessBuil

使用gradle获取依赖项源代码

是否有一种方法可以使用gradle获取依赖项的源代码。 我发现使用eclipse或idea插件可能有效,但我想保持代码IDE的不可知性。有没有办法获取给定依赖项的源代码?和/或使用eclipse或idea插件需要安装这些IDE才能正常工作?我注意到这一问题已经解决,因为我的源代码是: ~/.gradle/caches/modules-2/files-2.1/

使用正则表达式语法排除gradle中的依赖项JAR

我可以使用以下代码在gradle脚本中包含文件夹中的JAR: compile fileTree(dir: 'libs', include: '*.jar')// libs -> folder in root directory compile fileTree(dir: 'libs', include: '*.jar', exclude: 'antlr-2.7.7.jar') compile fileTree(dir: 'libs', include: '*.jar', exclude

Gradle[创建目录时未能创建父目录…]尝试复制文件时

我正在尝试将一些文件复制到网络服务器中的特定文件夹中,该文件夹要求我输入用户名和密码 我找到了,我现在正试图让它工作,但我被卡住了。我在build.gradle中添加了该站点及其url和authenticationInfo,但我似乎不知道如何将其与复制任务连接起来 到目前为止,我已经: site { url = 'sftp://MyServer/var/' authenticationInfo { userName = 'un' password

如何让EclipseGradle项目自动刷新依赖项?

我正在使用EclipseMars、Gradle2.7、EclipseGradle插件和Java8。我已经将Gradle项目导入Eclipse,并选中了“project”->“Build Automatically”。但是,当我在build.gradle文件中添加新的依赖项时,项目无法识别它。例如,当我通过Eclipse运行JUnit测试时,我得到了错误 java.lang.IllegalStateException: Failed to load ApplicationContext a

如何使用gradle脚本从某些源路径复制文件?

我正在尝试用gradle复制javadocs的图像。当前图像位于 MYPROJECT/src/main/resources/doc-files/images/ 我用这样的东西来引用这些图像 <img src="{@docRoot}/doc-files/images/myimage.jpg"> 这有两个问题: 1) 它什么也不做:) 2) 它显式地引用了资源/doc文件/images/,而我想从参数中推断出来。我不知道如何从这里使用一些东西:我不太清楚你想从它的参数推断出资源/do

Gradle 按约定将文件复制到Tar时,将文件模式设置为*.sh

如果我有一个像这样的gradle文件 apply plugin: 'distribution' version = '1.2' distributions { custom {} } 按照惯例,“src/custom/dist”目录中的所有文件都将自动包含在发行版中。 如果我想在其中一些文件上设置文件模式,该怎么办 如果我只指定fileMode,它不会做任何事情 into("") { from "src/custom/scripts" fileMode 075

使用gradle在sonarqube中同时使用java和javascript的项目

我们有一个使用Java的非常标准的web项目,它在标准src/main/webapp文件夹中还包含一些javascript代码。我们使用Gradle2.14作为构建工具 我们刚刚在一台新服务器上安装了一个全新的Sonarqube 6.0.1,检查了Java和Javascript插件是否都已安装,并按照以下建议修改了build.gradle文件: 这并不像预期的那样工作:java代码被正确分析,我们可以在sonar上浏览结果,但javascript代码没有被分析 我们做错了什么?谢谢。您确定son

如何在两个build.gradle.kts文件之间共享构建配置?

我有两个项目(在一个git存储库中)应该具有相同的特性 repository { } 在它们的build.gradle.kts中,但在其他方面是完全无关的 我是否可以将此公共部分分解出来,并将其包含在每个相应的build.gradle.kts中?如何使用?不知道它是否适用于kotlin,但您可以尝试使用plain gradle的等效产品: lol.gradle apply plugin: 'java' repositories { mavenCentral() } apply fr

Gradle:外部依赖项存储在哪里?

我使用的是Gradle,我给出了以下依赖项: dependencies { compile 'org.slf4j:slf4j-api:1.7.13' compile 'org.mongodb:mongodb-driver:3.2.2' testCompile 'org.testng:testng:6.8.1' testCompile 'junit:junit:3.8.2' } 我想下载MongoDB的驱动程序。我键入: 渐变型 几秒钟后,我收到一条消息,说构建成

错误:无法找到或加载主类org.gradle.launcher.GradleMain

我是Gradle的新手,在尝试用Windows操作系统在我的电脑上安装Gradle时,我遇到了下面提到的错误 Error: Could not find or load main class org.gradle.launcher.GradleMain 我所做的唯一一件事就是按照gradle站点中给出的gradle安装步骤并键入 gradle -v 在命令提示符下,我得到了上面提到的异常。任何关于发生了什么以及如何解决的线索 这就是我所做的: 下载了zip文件 将“gradle-3.5”从z

使用gradle复制时Jar文件为空

我的根项目中有几个子项目 | - root \ | - subproject_a | - subproject_b | - subproject_c subproject_c中的gradle文件将subproject_a和subproject_b生成的jar复制到其自己的libs文件夹中进行编译 文件被复制(即,jar文件的名称显示在subproject_c的libs文件夹中),但它们完全是空的 下面是子项目c的gradle文件中进行复制的部分 task copyJars

Gradle 环境占位符的渐变属性

我正在创建一个buildgradle项目来简化部署阶段。我的想法是有一个配置文件夹,里面有所有需要的配置文件。我想用占位符填充这些文件,例如,${databaseName}。在gradle脚本执行期间将被替换的值必须从属性文件加载 我希望每个环境有一个属性文件,例如,dev.properties,stage.properties,prod.properties。该*.properties的逻辑选择必须通过property命令属性加载,例如,gradle myTask-Denv=dev,这样占位符

使用kotlin dsl访问gradle的源集

如何转换以下groovy代码段 URL[] urls = sourceSets.main.runtimeClasspath.files.collect { it.toURI().toURL() } 到kotlin dsl?特别是属性SourceSet似乎不可用,无法编译 如何访问任务中的源集?对于运行时类路径,没有源集。classpath与sourceSet不同。但是,如果您有兴趣获取kotlin dsl项目的主源集,这里有一个片段: java { val files: Set

如何在gradle zip任务中排除路径信息

提前为这个简单的问题道歉我对Gradle来说比较陌生 我想在构建过程中运行Zip任务,并在“存档”目录中创建一个.Zip文件,但不包含源文件的目录结构。我设法让任务工作,但它保留了目录结构。我读到LinuxZip有一个选项-j或-r,它可以将目录展平,但我不确定我是否可以通过Gradle任务使用它 My input file structures looks similar to the below, ./libs/ ./libs/file1.jar ./scripts/

GradleRunner将其构建目录放在哪里?

我想运行一个功能测试,查看Gradle插件任务的输出,这是一系列文件。我使用的测试与中的测试类似,但与Spock一起运行 @Rule public final TemporaryFolder testProjectDir = new TemporaryFolder(); private File buildFile; def setup() { buildFile = testProjectDir.newFile("build.gradle"); buildFile <&

gradle jacoco插件不生成exec文件

我已经完成了从gradle 3.5到gradle 4.6的gradle迁移。迁移后,已停止生成exec文件。'/“生成”文件夹不包含“jacoco”文件夹。 如果使用--debug运行gradle命令,它会写入日志: [org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter] 跳过任务“:common:jacotestreport”作为仅任务如果为false 下面是gradle脚本的一部分: subprojects { app

将gradle项目部署到Artifactory

几天来,我一直试图将一个gradle项目部署到Artifactory,但我的任何尝试都是成功的 我正在使用Artifictory 6.1.0和gradle对氧气释放进行eclipe 我在Artifactory中创建了一个管理员用户和一个gradle存储库 我将代码[从存储库的生成设置]添加到build.gradle文件中,下面是内容 //In fact I am not sure if I need all of them!? apply plugin: 'java-library' apply

如何编写Gradle依赖项{}块的扩展方法

我正在尝试为DependencyHandler编写扩展方法。 实现这些方法的自动完成是主要目标之一 所以我在buildSrc项目中编写了如下扩展函数(Shortcuts.kt): 并将其注册为扩展模块,如下所述: 我想在build.gradle文件中使用以下方法: dependencies { ... autoValue() } 它出现在dependencies{}块内的自动完成列表中,但在配置时出现错误: org.gradle.internal.metaobject.Abst

在Gradle构建中使用Ant taskdef和loaderref

我有一只蚂蚁,我想换成格拉德尔。Ant构建使用了一些自定义任务。Ant build.xml看起来像 <project name="proj" basedir="."> <property name="abc.path" value="lib/abc-ant.jar"/> <taskdef resource="com/abc/antlib.xml" classpath="${abc.path}" loaderref="abc"/> </pr

如何使用gradle构建WAR文件?

我想构建一个WAR文件(然后将其部署到Tomcat)。因此,作为练习,我使用IDEA IntelliJ中的Gradle启动了一个新的Spring Boot项目。之后,我在build.gradle文件中应用了这个插件,就像这样apply plugin:'war' . 问题是,当我试图在终端中运行gradlewar时,我没有得到war文件!唯一发生的事情是,它将生成一个\build,其中包含3个子文件夹类、资源和tmp,但这些子文件夹中没有战争 我应该怎么做才能得到战争文件?我看过这段视频,但这家

Gradle 重复使用自定义渐变任务的属性

我对gradle任务的定义如下: task assembleAppPackage() { File distDir = file("${projectDir}/dist") File binDir = file("${distDir}/bin") File configDir = file("${distDir}/config") File libDir = file("${distDir}/lib") doLast { ...using distDir ,

gradle:如何仅在文件时间戳早于最新源代码时间戳时运行任务

在GradleBuild中,我的任务是从我的应用程序结构中的另一个目录构建、捆绑和复制JS文件。 如何设置条件-仅当bundle timestamp早于最新的JS源代码timestamp时才运行此任务 您需要做的唯一一件事是将.js文件声明为执行捆绑的任务的输入,并将捆绑作为输出。然后Gradle的增量构建将完成剩下的工作 正如您已经注意到的,整个文档都在userguide的部分中 基本上,您的任务需要如下所示: class BundleTask extends DefaultTask {

Gradle 如何使用一个名称引用多个任务的输出?

或者换句话说:如何收集多个任务的输出 我有一个包含许多任务的项目,我希望将这些任务的输出包含在分发版中。 我还有一项任务,这取决于他们所有人。 如何避免列出所有任务 示例build.gradle: 这个怎么样 task allA { dependsOn (taskA0, taskA1, taskA2) outputs.files(taskA0, taskA1, taskA2) } distributions { main { contents {

“圣杯”;“战争”;调用未向Gradle传递额外属性

调用“grails war”命令时,grails.env属性被传递给Gradle,但我用-D定义的任何其他属性都不会被传递 我已经验证了Gradle将获得属性,并且可以使用类似“Gradle-Dgrails.env=development-Dfoo.bar=blech”的命令打印它们 使用以下命令调用grails: grails-Dgrails.env=development-Dfoo.bar=blechwar build.gradle: ext { currentBuildEnviro

Gradle 缺少JavaFX应用程序类com.MainApp

我正在尝试从java-1.8迁移到java-11。。 我遇到了“缺少JavaFX应用程序类com.MainApp”的错误,我在网上寻找解决方案,发现了几个: 上述方法是“创建一个新的主类并调用扩展应用程序的类的主方法” 然而,我仍然面临以下问题: 我正在通过命令行运行它,并使用以下命令: 1.Java-jar abc.jar 线程“main”java.lang.NoClassDefFoundError中出现异常:javafx/application/application 位于java.ba

如何从build.gradle中的特定存储库url下载所有可用工件

我正在进行一个多模块构建,这是从内部存储库中可用的所有WSDL创建工件所必需的。但是它们很多,我不想列出它们,因为可能稍后会创建另一个WSDL项目并需要包含在列表中,如果不这样做,那么最终的工件将是不完整的 因此,我需要知道是否有任何方法可以让gradle获取特定路径上的工件,如domain.com/path/to/repo/wsdls/,并从该路径获取所有可用工件 我正在考虑创建一个配置,然后从中下载这个特定的存储库,但配置似乎不包括存储库,将使用build.gradle中定义的 有没有办法在

如何强制gradle刷新/重新加载(lib)目录包含的内容?

在我的gradle项目中,我有libs目录,其中包含一个jar文件。我创建了gradle任务,其中一个是从jenkins新jar版本下载的,保存在builddirecotry中,删除旧jar。 然后,我有两项任务要复制和更新属性文件: 副本: 更新: task('updateJar') { fileTree("libs"). def files = fileTree("libs").filter { it.isFile() }.files.name if(!files.

Gradle 找不到插件[id:';com.github.johnrengelman.shadow';,版本:';5.2.0';]

我目前正在尝试创建一个简单的discord机器人。我已经完成了代码,正在尝试通过shadow-->shadowJar导出它。我一直收到以下错误消息: 在以下任何源中未找到插件[id:'com.github.johnrengelman.shadow',版本:'5.2.0']: Gradle核心插件(插件不在'org.Gradle'命名空间中) 插件存储库(无法解析插件工件'com.github.johnrengelman.shadow:com.github.johnrengelman.shado

支持的最低Gradle版本为6.1.1。目前的版本是5.6.4

在升级到android studio 4.0后,我遇到了这个问题,而使用的是较旧的gradle版本: 在此之后,我下载了最新的gradle版本6.4.1,完成下载后,它给出了以下错误: Unable to find method 'org.gradle.api.tasks.TaskInputs.property(Ljava/lang/String;Ljava/lang/Object;)Lorg/gradle/api/tasks/TaskInputs;'. Possible causes f

使用non-build.gradle生成文件中的现有settings.gradle

我想对两个不同的构建文件使用一个settings.gradle文件。gradle具有内置行为,可以仅从build.gradle文件加载settings.gradle。因此,它确实希望在这两个文件之间保持一对一的关系。我使用Pieter Niederwieser的建议在开始参数(-c)中指定一个设置文件,但这并不完全是我想要的,因为我必须维护两个单独的settings.gradle文件(在其中一个文件中,我将指定rootProject.buildFileName)。不仅如此,当不使用build.g

IntelliJ无法导入gradle项目

IntelliJ无法导入我的Gradle项目 构建窗口显示恶魔从右侧开始,在左侧显示 <project-name> failed <timestamp> 事实上,没有依赖关系得到解决,源文件夹没有得到设置 如何调试/修复此问题?第一步应该是在命令行上构建项目并确保其正常工作 然后找到IntelliJ:Help->Show log-in Finder的日志文件在Mac OS上为我做这件事,我想在其他平台上也有类似的事情 我的日志显示: 2021-03-16 11:08:3

Gradle Liferay模块构建问题

我正在尝试将表单字段模块部署到Liferay DXP 7.3,但每当我尝试构建和部署该模块时,都会收到一个错误。我在GitHub上找到了我自己的模块和其他预构建模块,但都是相同的错误 我尝试创建一个新的Liferay工作区,删除所有npm模块并重新安装它们,从Liferay DXP部署,并使用./gradlew build。总是一样的错误 与其展示我的模块,我想在GitHub上脱离现有模块可能更容易,因此我将尝试构建以下内容: 我还想补充一点,错误似乎来自此npm run build js&&

  1    2   3   4   5   6  ... 下一页 最后一页 共 92 页