![](/img/trans.png)
[英]How to create .jar file in IntelliJ for Maven scala+spark project
[英]how to create jar of a groovy project in intellij indea
我已經使用intellij想法中的工件創建了一個groovy項目的jar,在項目設置中添加了groovy lib。 但是當我運行那個罐子時發生以下異常
Exception in thread "main" java.lang.NoClassDefFoundError: groovy/lang/GroovyObject
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: groovy.lang.GroovyObject
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 13 more
可能是創建jar的問題。 如何在intellij Idea中創建常規項目的jar。
使用Intellij Idea中的gradle支持。
如下所述, 在Intellij Idea中為您的項目提供了第一個有效的gradle支持 : https : //www.jetbrains.com/idea/help/working-with-gradle-projects.html
將您的源移動到默認的gradle目錄樹 。 groovy源文件必須移至src/main/groovy/...
,而測試源應移至src/test/groovy/...
。 (PS:您可以將gradle配置為在默認目錄之外的其他目錄中查找源,但是移動源更容易,更安全)。
在屏幕截圖中,您可以看到Java源代碼的目錄樹。 您改用groovy
。
比在項目的根目錄中添加gradle構建文件 。
基本的gradle文件(必須命名為build.gradle)如下所示:
buildscript { repositories { mavenCentral() } dependencies {} } apply plugin: 'groovy' apply plugin: 'java' apply plugin: 'idea' jar { baseName = 'your_project_name' version = '0.1.0' manifest { attributes("Build-Time": new Date().format("yyyy-MM-dd HH:mm:ss"), "Build-Jdk": System.getProperty("java.version"), "Built-By": System.getProperty("user.name"), "Created-By": "Gradle", ) } } repositories { mavenCentral() } // java version dependency sourceCompatibility = 1.7 targetCompatibility = 1.7 dependencies { // your local jar dependency compile files('./lib/your_jar.jar') // groovy compile 'org.codehaus.groovy:groovy-all:2.1.9' //other useful dependencies compile 'log4j:log4j:1.2.17' testCompile group: 'junit', name: 'junit', version: '4.11' } task wrapper(type: Wrapper) { gradleVersion = '2.3' }
Wenn Intellij完成構建后,您可以在build/libs/your_project_name.jar
找到您的可執行jar。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.