我正在使用gradle和gulp来构建和启动基于JDK6 +的JEE Web应用程序,并且Web容器是Jetty.
Gulp用于处理静态资源,例如concat和minify javascript/css文件.此外,watch我的gulp脚本中有一个任务,它用于观察静态文件更改并自动重建它们.
所以要在Jetty中启动应用程序,我需要做以下事情:
[gulp task: build].[gulp task: watch],我不直接调用这个gulp任务,它是通过Exec类通过gradle任务调用的[gradle task: watch].[gradle task: jettyRun].由于我将gradle任务添加为任务watch的依赖jettyRun项,所以我只需要gradle jettyRun从命令行调用,我的应用程序将启动.但结果与我的预期不一样.
以下是我的脚本文件:
的build.gradle
apply plugin: 'war'
apply plugin: 'jetty'
repositories {
jcenter()
}
// omit the dependencies here
task watch(type: Exec){
workingDir "${projectDir}"
// Pass build type to npm and gulp.
commandLine "gulp", "watch"
}
jettyRun.dependsOn watch
Run Code Online (Sandbox Code Playgroud)
gulpfile.js
var gulp = require('gulp');
gulp.task('build', function(callback) …Run Code Online (Sandbox Code Playgroud) 我有一个~/temp/包含许多文件和子目录的目录(),在某些目录中,它们可能包含其他文件和子目录.另外,在目录(~/temp/)中,它包含一个带有名称的特殊txt文件kept.txt,它列出了一些包含在其中的直接文件和子目录~/temp/,现在我要删除文件~/temp/中未列出的所有其他文件和目录kept.txt,如何使用shell命令执行此操作,越简单越好.
例如
目录如下:
$ tree temp/ -F
temp/
??? a/
??? b/
??? c/
? ??? f2.txt
? ??? z/
??? f1.txt
??? kept.txt
Run Code Online (Sandbox Code Playgroud)
内容kept.txt是:
$ more kept.txt
b
kept.txt
Run Code Online (Sandbox Code Playgroud)
对于这种情况:
a/,c/和f1.txt.因为c/,目录本身和所有子内容(文件和目录)将被删除.kept.txt,格式是每行一个项目(文件或目录).我在使用jmockit时遇到了以下问题。
我有一个抽象类,它还有许多具体(非抽象)实例方法,现在我想编写一个 JUnit4 测试用例来验证抽象类的一个非抽象和实例方法,但模拟类中的所有其他方法?
例如:
public class abstract Animal {
public abstract void abstractMethod1();
......
public abstract void abstractMethodN();
public void method1() {
System.out.println("Do something1 ...");
}
public void method2() {
System.out.println("Do something2 ...");
}
......
public void methodN() {
method1();
method2();
System.out.println("Do somethingN ...");
}
}
Run Code Online (Sandbox Code Playgroud)
对于这个定义的类,我想编写一个 JUnit4 测试用例来仅验证 methodN 中的逻辑,所以我想模拟整个类。(对于method1和method2,mock或者不mock都可以。)怎么办?