这是我的:
task makeDirectoryStructure(type:Exec){
description 'Creates directory structure .'
commandLine 'mkdir'
args '-p' ,'top_dir/sub_dir_1/sub_dir_2'
println "This line is printed in configuration phase."
}
$gradle tasks
我希望mkdir在配置阶段运行,即我的目录结构应该形成,但没有发生。
然而,我得到了以下输出:
yogeshwardancharan@yogeshwardancharan-Lenovo-G570:~/android_learning_resources/gradle_resources/ud867/1.01-Exercise-RunYourFirstTask$ gradle tasks
This line is printed in configuration phase.
:tasks
------------------------------------------------------------
All tasks runnable from root project
------------------------------------------------------------
Build Setup tasks
-----------------
init - Initializes a new Gradle build. [incubating]
wrapper - Generates Gradle wrapper files. [incubating]
Help tasks
----------
components - Displays the components produced by root project '1.01-Exercise-RunYourFirstTask'. [incubating]
dependencies - Displays all dependencies declared in root project '1.01-Exercise-RunYourFirstTask'.
dependencyInsight - Displays the insight into a specific dependency in root project '1.01-Exercise-RunYourFirstTask'.
help - Displays a help message.
model - Displays the configuration model of root project '1.01-Exercise-RunYourFirstTask'. [incubating]
projects - Displays the sub-projects of root project '1.01-Exercise-RunYourFirstTask'.
properties - Displays the properties of root project '1.01-Exercise-RunYourFirstTask'.
tasks - Displays the tasks runnable from root project '1.01-Exercise-RunYourFirstTask'.
Other tasks
-----------
makeDirectoryStructure - Creates directory structure .
现在,在上面这行的输出打印中
$gradle makeDirectoryStructure
请查看AbstractExecTask
,Exec
从其继承。正如您所看到的,有很多getter和setter。在配置时发生的是只为这些字段设置值,而不是运行它们。所有设置的属性都将仅在用@taskaction
注释的exec()
方法被调用时使用-这在运行时发生。为什么println
工作?它只是一个被调用的方法,与上面提到的setter完全相同--println
只是具有可见的效果,而setter只是更改后面使用的属性。
每一项任务都有它的行动。不同之处在于,在配置阶段,只配置任务,并且在执行任务操作时使用此配置。
另一个Maven问题。我有一个用Maven-SureFire-Plugin运行的TestNG测试的应用程序。我已经创建了2个配置文件,用于pdoruction和测试。
问题内容: 我正在编写一个简单的项目,一个使用Swing编写的业务应用程序,它使用Hibernate作为后端。我来自Spring,这为我提供了使用hibernate和事务的简便方法。无论如何,我设法让Hibernate工作。昨天,在编写一些代码从数据库中删除bean的同时,我得到了以下信息: 删除代码很简单: 我的是: 其他详细信息:仅在关闭应用程序时,我才会在代码中关闭hibernate会话。这
问题内容: 我有以下代码: 以及其他各种方法,例如@ Before,@ After,@ Test或@AfterClass方法。 测试在启动时不会像看起来的那样失败。有谁可以帮助我吗? 我有JUnit 4.5 该方法无法立即调用注释为@before的setUp()。类def是: 问题答案: 不要扩展TestCase并同时使用注释! 如果需要使用批注创建测试套件,请使用RunWith批注,例如: (按
控制台中出现以下错误: 我的文件夹文件: 那么,虽然存在,但为什么我会出现错误呢?
我在CompletableFuture的供应Async()中处理长时间运行的操作,并将结果输入thenAccess()。在某些情况下,thenAccess()在主线程上执行,但在某些时候,它在工作线程上运行。但是我想只在主线程上运行thenAccess()操作。这是示例代码。 结果是: 我怎样才能解决这个问题?