我编写了一个简单的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“VertretungsplanProject”项目刷新失败:无法
使用梯度分布获取“IdeaProject”类型的模型
''. A.
配置项目“:Vertretungsplan”时出现问题。问题
配置项目“:Vertretungsplan”时发生错误。未能通知
项目评估监听器。配置项目时出现问题
“:库:actionbarsherlock”。未能通知项目评估
听众。无法规范化文件的路径
'P:\Projekte\Vert
这可能是个愚蠢的问题。目前在我的公司里,gradle的用法开始出现。我一直在学习gradle的基础知识,并将其用于我的小项目
由于gradle的灵活性,使用范围可能非常广泛。我来自maven,现在我对gradle在我们项目中的作用感到困惑,因为它是一个通用工具
以下是一些在我脑海中闪现问题的用法:
Gradle任务被视为CLI子命令。命令行参数作为属性传递。在我看来,该项目可以作为一个普通的java/groovy编写,它使用已经相当成熟的库common cli或args4j(支持帮助、用法等)
我有一个使用Gradle和ivy publish插件构建的项目。除了构建一个JAR,build.gradle还执行一个运行任务,该任务执行XmlFileGenerator.main(),生成5个XML文件(称为a、B、C、D和E)。我希望将这些XML文件发布到我们的常春藤存储库中;每个都应该有相同的组和版本,但有不同的模块和不同的文件名,并且每个都应该有自己的ivy.xml,只列出自己
我可以设置已发布文件的文件名,但模块名与项目名保持一致,因此所有XML文件都以相同的模块名发布,而不是以独立的
是否有可能将图书馆与Gradle的整合?我四处寻找解决方案已经有一段时间了,但到目前为止我还没有找到任何
如果有帮助的话,这是我现在的脚本。这是一项正在进行的工作,但报告生成正确
apply plugin: "findbugs"
task findbugs(type: FindBugs) {
classes = fileTree(project.rootDir.absolutePath).include("**/*.class");
source = fileTree(pro
有没有一种方法可以让我获得当前正在执行的任务的详细信息?例如,我想打印正在执行的当前任务的名称,等等
我试过这个:
task printMyNameIfYouCan << {
println $task.name
}
注意:我查过了,但这不是我要看的
task printMyNameIfYouCan {
doLast {
println name
}
}
task printMyNameIfYouCan {
doLast {
将项目导入eclipse时,我遇到以下错误:
找不到系统Java编译器。确保安装了JDK(不仅仅是JRE)并将JAVA_HOME系统变量配置为指向相应的目录。无法使用梯度分布“”执行生成
正如我检查过的那样,我需要将JAVA_设置为HOME(我的计算机上有JDK),但我不知道怎么做。我有很多类似的问题,我认为最好的解决方案是手动指定JDK位置。为了做到这一点:
将两个文件添加到项目根文件夹
gradle.properties:
org.gradle.java.home=C:/Program Fi
类似于但不是傻瓜
声纳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
我希望有基于客户配置的动态WAR任务。我使用配置名称创建了一个数组,并尝试应用自定义行为,如下所示:
ext.customerBuilds = ['customer1', 'customer2', 'customer3']
ext.customerBuilds.eachWithIndex() {
obj, i ->
task "dist_${obj}" (type:War) << {
from "etc/customers/${
我正在尝试将AndroidStudio项目从默认工作区位置移动到另一个位置(作为将此项目移动到版本控制的一部分)
我是AndroidStudio的新手(这是我在其中的第一个“真正的”项目),但是当我翻阅文档时,我发现local.properties应该不在版本控制范围内,所以我放弃了它。这修复了我在尝试导入时的第一个错误
但是,现在当我尝试从新位置导入项目时,出现以下错误:
The project is using an unsupported version of Gradle.
Please
我对Gradle的分发插件有问题。我只想用这个插件把我所有的文件捆绑在一起(jar、shell脚本等等)
这是我的身材。格雷德尔:
apply plugin: 'eclipse'
apply plugin: 'maven-publish'
apply plugin: 'distribution'
sourceCompatibility = 1.7
targetCompatibility = 1.7
publishing {
...
}
repositories {
ma
我已经成功地将快照jar上传到Nexus中。这些将作为时间戳上传到jar名称。我已经在build.gradle中给出了project.version=“SNAPSHOT”
当我试图下载相同的工件时,它失败地说-SNAPSHOT找不到,这是合乎逻辑的,因为JAR是作为_时间戳上传的
如何下载快照工件?您应该添加快照而不是时间戳-可能有多个工件具有相同的快照版本-并通过适当的策略解决工件
请参阅下面的代码:
configurations.all {
resolutionStrategy {
我曾尝试使用gradle jacoco插件在spring gradle项目中获得代码覆盖率
build.gradle包含以下内容
apply plugin: "jacoco"
jacoco {
toolVersion = "0.7.1.201405082137"
reportsDir = file("$buildDir/customJacocoReportDir")
}
jacocoTestReport {
reports {
我正在尝试创建一个类似于此结构的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工具api(我发现这是推荐的测试方法)
其中一个测试要求我通过设置一些环境变量来运行任务。我如何测试这个。我看不到ProjectConnection提供了设置环境变量的方法
如果必须手动测试,则必须执行以下操作:
setenv LRG_REPOS foo
gradle verify_lrg -PlrgName=abc
其中,verify_lrg是由我的自定义插件添加的任务
目前为了解决这个问题,我正在使用ProcessBuil
是否有一种方法可以使用gradle获取依赖项的源代码。
我发现使用eclipse或idea插件可能有效,但我想保持代码IDE的不可知性。有没有办法获取给定依赖项的源代码?和/或使用eclipse或idea插件需要安装这些IDE才能正常工作?我注意到这一问题已经解决,因为我的源代码是:
~/.gradle/caches/modules-2/files-2.1/
我可以使用以下代码在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
我正在尝试将一些文件复制到网络服务器中的特定文件夹中,该文件夹要求我输入用户名和密码
我找到了,我现在正试图让它工作,但我被卡住了。我在build.gradle中添加了该站点及其url和authenticationInfo,但我似乎不知道如何将其与复制任务连接起来
到目前为止,我已经:
site {
url = 'sftp://MyServer/var/'
authenticationInfo {
userName = 'un'
password
我正在使用EclipseMars、Gradle2.7、EclipseGradle插件和Java8。我已经将Gradle项目导入Eclipse,并选中了“project”->“Build Automatically”。但是,当我在build.gradle文件中添加新的依赖项时,项目无法识别它。例如,当我通过Eclipse运行JUnit测试时,我得到了错误
java.lang.IllegalStateException: Failed to load ApplicationContext
a
我正在尝试用gradle复制javadocs的图像。当前图像位于
MYPROJECT/src/main/resources/doc-files/images/
我用这样的东西来引用这些图像
<img src="{@docRoot}/doc-files/images/myimage.jpg">
这有两个问题:
1) 它什么也不做:)
2) 它显式地引用了资源/doc文件/images/,而我想从参数中推断出来。我不知道如何从这里使用一些东西:我不太清楚你想从它的参数推断出资源/do
如果我有一个像这样的gradle文件
apply plugin: 'distribution'
version = '1.2'
distributions {
custom {}
}
按照惯例,“src/custom/dist”目录中的所有文件都将自动包含在发行版中。
如果我想在其中一些文件上设置文件模式,该怎么办
如果我只指定fileMode,它不会做任何事情
into("") {
from "src/custom/scripts"
fileMode 075
我们有一个使用Java的非常标准的web项目,它在标准src/main/webapp文件夹中还包含一些javascript代码。我们使用Gradle2.14作为构建工具
我们刚刚在一台新服务器上安装了一个全新的Sonarqube 6.0.1,检查了Java和Javascript插件是否都已安装,并按照以下建议修改了build.gradle文件:
这并不像预期的那样工作:java代码被正确分析,我们可以在sonar上浏览结果,但javascript代码没有被分析
我们做错了什么?谢谢。您确定son
我有两个项目(在一个git存储库中)应该具有相同的特性
repository {
}
在它们的build.gradle.kts中,但在其他方面是完全无关的
我是否可以将此公共部分分解出来,并将其包含在每个相应的build.gradle.kts中?如何使用?不知道它是否适用于kotlin,但您可以尝试使用plain gradle的等效产品:
lol.gradle
apply plugin: 'java'
repositories {
mavenCentral()
}
apply fr
我使用的是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的驱动程序。我键入:
渐变型
几秒钟后,我收到一条消息,说构建成
我是Gradle的新手,在尝试用Windows操作系统在我的电脑上安装Gradle时,我遇到了下面提到的错误
Error: Could not find or load main class org.gradle.launcher.GradleMain
我所做的唯一一件事就是按照gradle站点中给出的gradle安装步骤并键入
gradle -v
在命令提示符下,我得到了上面提到的异常。任何关于发生了什么以及如何解决的线索
这就是我所做的:
下载了zip文件
将“gradle-3.5”从z
我的根项目中有几个子项目
| - root
\
| - subproject_a
| - subproject_b
| - subproject_c
subproject_c中的gradle文件将subproject_a和subproject_b生成的jar复制到其自己的libs文件夹中进行编译
文件被复制(即,jar文件的名称显示在subproject_c的libs文件夹中),但它们完全是空的
下面是子项目c的gradle文件中进行复制的部分
task copyJars
我正在创建一个buildgradle项目来简化部署阶段。我的想法是有一个配置文件夹,里面有所有需要的配置文件。我想用占位符填充这些文件,例如,${databaseName}。在gradle脚本执行期间将被替换的值必须从属性文件加载
我希望每个环境有一个属性文件,例如,dev.properties,stage.properties,prod.properties。该*.properties的逻辑选择必须通过property命令属性加载,例如,gradle myTask-Denv=dev,这样占位符
我想使用孵化来build.gradle:
plugins {
id "com.jfrog.bintray" version "0.4.1"
}
pluginManagement {
repositories {
maven {
url "https://artifactory.example.com/"
}
}
}
默认情况下,这会从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任务,并在“存档”目录中创建一个.Zip文件,但不包含源文件的目录结构。我设法让任务工作,但它保留了目录结构。我读到LinuxZip有一个选项-j或-r,它可以将目录展平,但我不确定我是否可以通过Gradle任务使用它
My input file structures looks similar to the below,
./libs/
./libs/file1.jar
./scripts/
我想运行一个功能测试,查看Gradle插件任务的输出,这是一系列文件。我使用的测试与中的测试类似,但与Spock一起运行
@Rule public final TemporaryFolder testProjectDir = new TemporaryFolder();
private File buildFile;
def setup() {
buildFile = testProjectDir.newFile("build.gradle");
buildFile <&
我有以下build.grade配置
buildscript {
ext.kotlin_version = '1.2.21'
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
plugins {
id "org.jetbrains.kotlin.jvm" version "1.2.21"
id "com.jfrog.b
我已经完成了从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,但我的任何尝试都是成功的
我正在使用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
我正在尝试为DependencyHandler编写扩展方法。
实现这些方法的自动完成是主要目标之一
所以我在buildSrc项目中编写了如下扩展函数(Shortcuts.kt):
并将其注册为扩展模块,如下所述:
我想在build.gradle文件中使用以下方法:
dependencies {
...
autoValue()
}
它出现在dependencies{}块内的自动完成列表中,但在配置时出现错误:
org.gradle.internal.metaobject.Abst
我有一只蚂蚁,我想换成格拉德尔。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
我想构建一个WAR文件(然后将其部署到Tomcat)。因此,作为练习,我使用IDEA IntelliJ中的Gradle启动了一个新的Spring Boot项目。之后,我在build.gradle文件中应用了这个插件,就像这样apply plugin:'war'
.
问题是,当我试图在终端中运行gradlewar时,我没有得到war文件!唯一发生的事情是,它将生成一个\build,其中包含3个子文件夹类、资源和tmp,但这些子文件夹中没有战争
我应该怎么做才能得到战争文件?我看过这段视频,但这家
我对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 ,
在GradleBuild中,我的任务是从我的应用程序结构中的另一个目录构建、捆绑和复制JS文件。
如何设置条件-仅当bundle timestamp早于最新的JS源代码timestamp时才运行此任务 您需要做的唯一一件事是将.js文件声明为执行捆绑的任务的输入,并将捆绑作为输出。然后Gradle的增量构建将完成剩下的工作
正如您已经注意到的,整个文档都在userguide的部分中
基本上,您的任务需要如下所示:
class BundleTask extends DefaultTask {
或者换句话说:如何收集多个任务的输出
我有一个包含许多任务的项目,我希望将这些任务的输出包含在分发版中。
我还有一项任务,这取决于他们所有人。
如何避免列出所有任务
示例build.gradle:
这个怎么样
task allA {
dependsOn (taskA0, taskA1, taskA2)
outputs.files(taskA0, taskA1, taskA2)
}
distributions {
main {
contents {
我在多项目构建中有两个项目。一个是这样的:
// project-a build.gradle
task generateJar(type: Exec) {
commandLine "command", "to", "generate", "jar"
}
task generateArtifact(type: Zip, dependsOn: generateJar) {
outputs.file("/path/to/generated/jar")
}
artifacts {
调用“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
我正在尝试从java-1.8迁移到java-11。。
我遇到了“缺少JavaFX应用程序类com.MainApp”的错误,我在网上寻找解决方案,发现了几个:
上述方法是“创建一个新的主类并调用扩展应用程序的类的主方法”
然而,我仍然面临以下问题:
我正在通过命令行运行它,并使用以下命令:
1.Java-jar abc.jar
线程“main”java.lang.NoClassDefFoundError中出现异常:javafx/application/application
位于java.ba
我正在进行一个多模块构建,这是从内部存储库中可用的所有WSDL创建工件所必需的。但是它们很多,我不想列出它们,因为可能稍后会创建另一个WSDL项目并需要包含在列表中,如果不这样做,那么最终的工件将是不完整的
因此,我需要知道是否有任何方法可以让gradle获取特定路径上的工件,如domain.com/path/to/repo/wsdls/,并从该路径获取所有可用工件
我正在考虑创建一个配置,然后从中下载这个特定的存储库,但配置似乎不包括存储库,将使用build.gradle中定义的
有没有办法在
在我的gradle项目中,我有libs目录,其中包含一个jar文件。我创建了gradle任务,其中一个是从jenkins新jar版本下载的,保存在builddirecotry中,删除旧jar。
然后,我有两项任务要复制和更新属性文件:
副本:
更新:
task('updateJar') {
fileTree("libs").
def files = fileTree("libs").filter { it.isFile() }.files.name
if(!files.
标签: Gradle
build.gradlegradle-plugin
我目前正在尝试创建一个简单的discord机器人。我已经完成了代码,正在尝试通过shadow-->shadowJar导出它。我一直收到以下错误消息:
在以下任何源中未找到插件[id:'com.github.johnrengelman.shadow',版本:'5.2.0']:
Gradle核心插件(插件不在'org.Gradle'命名空间中)
插件存储库(无法解析插件工件'com.github.johnrengelman.shadow:com.github.johnrengelman.shado
在升级到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
我想对两个不同的构建文件使用一个settings.gradle文件。gradle具有内置行为,可以仅从build.gradle文件加载settings.gradle。因此,它确实希望在这两个文件之间保持一对一的关系。我使用Pieter Niederwieser的建议在开始参数(-c)中指定一个设置文件,但这并不完全是我想要的,因为我必须维护两个单独的settings.gradle文件(在其中一个文件中,我将指定rootProject.buildFileName)。不仅如此,当不使用build.g
IntelliJ无法导入我的Gradle项目
构建窗口显示恶魔从右侧开始,在左侧显示
<project-name> failed <timestamp>
事实上,没有依赖关系得到解决,源文件夹没有得到设置
如何调试/修复此问题?第一步应该是在命令行上构建项目并确保其正常工作
然后找到IntelliJ:Help->Show log-in Finder的日志文件在Mac OS上为我做这件事,我想在其他平台上也有类似的事情
我的日志显示:
2021-03-16 11:08:3
我正在尝试将表单字段模块部署到Liferay DXP 7.3,但每当我尝试构建和部署该模块时,都会收到一个错误。我在GitHub上找到了我自己的模块和其他预构建模块,但都是相同的错误
我尝试创建一个新的Liferay工作区,删除所有npm模块并重新安装它们,从Liferay DXP部署,并使用./gradlew build。总是一样的错误
与其展示我的模块,我想在GitHub上脱离现有模块可能更容易,因此我将尝试构建以下内容:
我还想补充一点,错误似乎来自此npm run build js&&
1 2 3 4 5 6 ...
下一页 最后一页 共 92 页