java -Djava.library.path=lib -jar lib/avatar-js.jar helloWorld.js
的启动是否有 gradle/groovy 代码模拟,即 lanching .js 文件Java 8 和传递一些库
或者使用定义的依赖
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
repositories {
maven {
url "https://maven.java.net/content/repositories/public/"
}
}
dependencies {
compile "com.oracle:avatar-js:0.10.25-SNAPSHOT"
compile "com.oracle:libavatar-js-win-x64:0.10.25-SNAPSHOT"
}
task copyLibs(type: Copy) {
from configurations.compile
into 'lib'
}
sourceSets {
main {
java {
srcDir 'src'
}
resources {
srcDir 'src '
}
}
}
我找到的唯一相关文档 ( Build and run a jar inside of a Gradle task ) 是来自 Chapter 45. The Application Plugin 的行
startScripts jar CreateStartScripts Creates OS specific scripts to run the project as a JVM application.
应用程序插件依赖于 Java,无法为 JavaScript 或 C/C++ 定义任务
CreateStartScripts需要 String mainClassName
(不是要运行的文件)
最佳答案
这里有 2 个将运行服务器的 gradle 任务:
task runHelloWorld(type: Exec) {
commandLine 'java', '-Djava.library.path=lib', '-jar', 'lib/avatar-js.jar', 'helloWorld.js'
}
task runHelloWorld2(type: JavaExec) {
args 'helloWorld.js'
main 'com.oracle.avatar.js.Server'
systemProperties 'java.library.path':'lib'
classpath 'lib/avatar-js.jar'
}
关于java - 运行 Nashorn JavaScript 的 Gradle 任务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23148214/