小编man*_*hou的帖子

如何在后台执行gradle外部任务(Exec)?

我正在使用gradle和gulp来构建和启动基于JDK6 +的JEE Web应用程序,并且Web容器是Jetty.

Gulp用于处理静态资源,例如concat和minify javascript/css文件.此外,watch我的gulp脚本中有一个任务,它用于观察静态文件更改并自动重建它们.

所以要在Jetty中启动应用程序,我需要做以下事情:

  1. 使用gulp构建静态资源[gulp task: build].
  2. 观察静态文件更改[gulp task: watch],我不直接调用这个gulp任务,它是通过Exec类通过gradle任务调用的[gradle task: watch].
  3. 构建我的java代码并启动Jetty [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)

jetty gradle gulp

7
推荐指数
1
解决办法
4040
查看次数

Shell脚本:如何删除目录中除文件中列出的文件以外的所有文件?

我有一个~/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)

对于这种情况:

  1. 我想删除a/,c/f1.txt.因为c/,目录本身和所有子内容(文件和目录)将被删除.
  2. kept.txt,格式是每行一个项目(文件或目录).

bash shell

6
推荐指数
1
解决办法
166
查看次数

如何使用 jmockit 模拟整个抽象类,但排除应在一个 JUnit4 测试用例中验证的一个或多个方法?

我在使用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都可以。)怎么办?

java jmockit junit4

3
推荐指数
1
解决办法
4424
查看次数

标签 统计

bash ×1

gradle ×1

gulp ×1

java ×1

jetty ×1

jmockit ×1

junit4 ×1

shell ×1