我的build.gradle
文件如下:
apply plugin: 'java' sourceCompatibility = 1.8
repositories {
mavenCentral() }
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
compile 'io.javalin:javalin:1.3.0'
compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.9.4'
compile 'org.slf4j:slf4j-simple:1.7.25' }
jar {
manifest {
attributes(
'Class-Path': configurations.runtime.files.collect {"$it.name"}.join(' '),
'Main-Class': 'products.ProductAPI'
)
} }
task stage {
dependsOn 'build'
dependsOn 'clean'
build.mustRunAfter clean }
尝试使用gradle构建Java应用程序并将其部署到Heroku服务器。我在
java -jar build/libs/MyApp-0.0.1.jar
上遇到了一些问题,因为它返回以下内容:
主线程中的异常 "main" java.lang.NoClassDefFoundError:io/javalin/Javalin 在 products.ProductAPI.main(ProductAPI.java:7) Caused by: java.lang.ClassNotFoundException: io.javalin.Javalin 在 java.net.URLClassLoader.findClass(URLClassLoader.java:381) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:424) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:338) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:357)