gpt4 book ai didi

java - 如何让gradlew.bat自动运行任务?

转载 作者:行者123 更新时间:2023-12-01 21:59:41 25 4
gpt4 key购买 nike

我想知道是否可以告诉 Gradle Wrapper 的 gradlew.bat 自动运行“test”或“jacocoTestReport”等任务。

我尝试通过将“gradle test”之类的行放入 gradlew.bat 的执行区域来做到这一点。然后它告诉我“gradle”不是一个已知的命令?

附带问题:我使用 gradle 包装器创建了 4 个文件(2 个脚本、1 个 jar、1 个属性文件)。我将这 4 个文件发送到一台根本不知道 gradle 的不同计算机上并执行 gradlew.bat。它说构建成功,但它所做的只是创建一个空的 .gradle 文件夹?这是应该发生的事情吗?缺乏文档使其变得非常困难。不过我确实阅读了很多官方的 gradle 文档。但这只是一点点帮助。我还用谷歌搜索了一堆。

我使用非常默认的 gradlew.bat 文件。

    @if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################

@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal

@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=

set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%

@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome

set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init

echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.

goto fail

:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe

if exist "%JAVA_EXE%" goto init

echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.

goto fail

:init
@rem Get command-line arguments, handling Windowz variants

if not "%OS%" == "Windows_NT" goto win9xME_args
if "%@eval[2+2]" == "4" goto 4NT_args

:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2

:win9xME_args_slurp
if "x%~1" == "x" goto execute

set CMD_LINE_ARGS=%*
goto execute

:4NT_args
@rem Get arguments from the 4NT Shell from JP Software
set CMD_LINE_ARGS=%$

:execute
@rem Setup the command line

set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar

@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%

:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd

:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1

:mainEnd
if "%OS%"=="Windows_NT" endlocal

:omega

我的build.gradle文件

apply plugin: "java"
apply plugin: "maven"
apply plugin: "jacoco"


group = 'Calc'
version = '0.0.1-SNAPSHOT'

description = """"""


jacoco {
toolVersion = "0.7.1.201405082137"

reportsDir = file("$buildDir/customJacocoReportDir")

}

repositories {
mavenCentral()
}

dependencies {
testCompile "junit:junit:4.+"
}

test {
jacoco {
append = false
destinationFile = file("$buildDir/jacoco/jacocoTest.exec")
classDumpFile = file("$buildDir/jacoco/classpathdumps")
}
}

jacocoTestReport {
reports {
xml.enabled false
csv.enabled false
html.destination "${buildDir}/jacocoHtml"
}
classDirectories = files('build/classes/')
}

最佳答案

您实际上可以在 build script 中执行此操作如果你愿意的话。只需添加以下内容:

defaultTasks = ['test']

关于java - 如何让gradlew.bat自动运行任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33791663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com