我是Gradle构建工具的初学者。我成功编译了HelloWorld.java代码,但在尝试运行时会出现以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: org/joda/time/LocalTime at
hello.HelloWorld.main (HelloWorld.java:7)
我的HelloWorld.java代码是:
package hello;
import org.joda.time.LocalTime;
public class HelloWorld {
public static void main(String[] args) {
LocalTime currentTime = new LocalTime();
System.out.println("The current local time is: " + currentTime);
Greeter greeter = new Greeter();
System.out.println("greeter.sayHello()");
}
}
Greeter类只是一个包含sayHello()方法的类来打印“Hello World”消息。
Gradle的build.gradle代码是:
apply plugin: 'java'
repositories {
mavenCentral()
}
dependencies {
compile "joda-time:joda-time:1.5"
}
请确定问题并回复......
提前致谢。
答案 0 :(得分:3)
使用应用程序插件。
apply plugin: 'application'
mainClassName = 'hello.HelloWorld'
然后运行:
gradle installApp
这将创建一个build / install / nameofyourapp文件夹。其中包含一个bin文件夹,其中包含可正确运行应用程序的脚本。
编辑:
假设您的应用程序名为my_app(这是build.gradle文件所在文件夹的名称),要运行该应用程序,您需要输入:
Linux的
build/install/my_app/bin/my_app
窗
build\install\my_app\bin\my_app.bat