Don';在Jenkins上运行时,无法查看所有gradle任务
我正在做一个Don';在Jenkins上运行时,无法查看所有gradle任务,jenkins,gradle,Jenkins,Gradle,我正在做一个xtext项目,将Gradle作为一个构建系统。我想在Jenkins中运行GradlewWar,但是,由于某些原因,它不可用。当我运行gradlew tasks查看所有可用选项时,它没有列在那里。以下是可用的任务: Build Setup tasks ----------------- init - Initializes a new Gradle build. wrapper - Generates Gradle wrapper files. Help tasks -------
xtext
项目,将Gradle作为一个构建系统。我想在Jenkins中运行GradlewWar
,但是,由于某些原因,它不可用。当我运行gradlew tasks
查看所有可用选项时,它没有列在那里。以下是可用的任务:
Build Setup tasks
-----------------
init - Initializes a new Gradle build.
wrapper - Generates Gradle wrapper files.
Help tasks
----------
buildEnvironment - ...
...
但是,当我在本地计算机上运行它时,可以执行的任务要多得多:
Build tasks
-----------
...
war - Generates a war archive with all the compiled classes, the web-app content and the libraries.
Build Setup tasks
-----------------
init - Initializes a new Gradle build.
wrapper - Generates Gradle wrapper files.
Documentation tasks
-------------------
javadoc - Generates Javadoc API documentation for the main source code.
Help tasks
----------
...
IDE tasks
---------
...
Run tasks
---------
jettyRun - Starts an example Jetty server with your language
Verification tasks
------------------
check - Runs all checks.
test - Runs the unit tests.
所以war
任务显然就在那里,我可以毫无问题地运行它。为什么詹金斯没有看到呢。我没有修改任何Gradle文件。所有代码都包含与项目一起创建的默认代码。如果需要,我可以附加任何Gradle文件,但我不知道需要哪一个。但这是主build.gradle
文件(子目录中有更多:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'org.xtext:xtext-gradle-plugin:2.0.4'
}
}
subprojects {
ext.xtextVersion = '2.17.0'
repositories {
jcenter()
}
apply plugin: 'java'
dependencies {
compile platform("org.eclipse.xtext:xtext-dev-bom:${xtextVersion}")
}
apply plugin: 'org.xtext.xtend'
apply from: "${rootDir}/gradle/source-layout.gradle"
apply plugin: 'eclipse'
group = 'ic.ac.uk.mydsl'
version = '1.0.0-SNAPSHOT'
sourceCompatibility = '1.8'
targetCompatibility = '1.8'
configurations.all {
exclude group: 'asm'
}
}
编辑:
git repo中我的父目录的图像:
您确定从Jenkins上的同一目录和本地运行
/gradlew tasks
吗?如果从根项目目录运行Gradle命令,则将显示根项目的任务,但不会显示子项目的任何任务。您的根项目似乎没有应用任何插件,只有子项目才这样做。Conseq通常,根项目上不会有任何特定于插件的任务,如war
。是否确实从Jenkins上的同一目录和本地运行/gradlew tasks
?如果从根项目目录运行Gradle命令,则将显示根项目的任务,但不会显示子项目的任何任务ts。您的根项目似乎没有应用任何插件,只有子项目才应用。因此,在您的根项目上不会有任何特定于插件的任务,如war
。我非常确定我是在同一个目录中执行的,因为我搜索了我的项目,只有一个gradlew文件,所以我认为不可能运行它从不同的目录。我如何从Jenkins的子目录运行任务?因为在本地,它似乎会自动从子目录找到任务?我非常确定我是在同一个目录中运行的,因为我搜索了我的项目,只有一个gradlew文件,所以我认为不可能从不同的目录运行它是的。我如何从Jenkins中的子目录运行任务?因为它似乎是自动从子目录找到任务的。你确定你在向导中配置了web项目吗?如果是,war插件将应用于.web项目,因此war将在任务中可用。那么你确定你已经提交了所有内容吗?(例如,设置梯度)很抱歉,我不知道向导是什么。但是,我在帖子中附加了我的git repo的图像。这看起来不错。但我不知道为什么它不应该工作。我已经看过100次了,它总是工作的。=>没有访问复制示例:不知道。=>它与hello world mydsl示例一起工作吗?我要尝试一下我的c创建了一个新项目,但没有修改任何内容,jenkins上的“gradlew tasks”仍然返回相同的列表,没有“war”任务。您确定在向导中配置了web项目吗?如果是,war插件将应用于.web项目,因此任务中可以使用war。那么您确定已提交所有内容吗?(例如,设置gradle)很抱歉,我不知道向导是什么。但是,我在帖子中附加了我的git repo的图像。这看起来不错。但我不知道为什么它不应该工作。我已经看过100次了,它总是工作的。=>没有访问复制示例:不知道。=>它与hello world mydsl示例一起工作吗?我要尝试一下我的c创建了一个新项目,没有修改任何内容,但jenkins上的“gradlew tasks”仍然返回相同的列表,没有“war”任务。