2015-10-22 215 views
0

我用下面的命令来编译和运行HelloWorld的jar文件,但得到了一个错误无法找到或加载主类com.johnathanmarksmith.gradle.HelloWorld

无法找到或加载主类 com.johnathanmarksmith .gradle.HelloWorld

谁能告诉我如何解决它?

mkdir runnablejar 
cd runnablejar 
mkdir -p src/main/java 
mkdir -p src/main/resources 
mkdir -p src/test/java 
mkdir -p src/test/resources 
mkdir -p com/johnathanmarksmith/gradle 
vi com/johnathanmarksmith/gradle/HelloWorld.java 
(insert) 
package com.johnathanmarksmith.gradle; 
public class HelloWorld 
{ 
    public static void main(String[] args) 
    { 
     System.out.println("Hello World!"); 
    } 
} 
vi build.gradle 
apply plugin: 'java' 

jar { 
     baseName = 'smith' 
     version = '1.0' 
     manifest { 
        attributes 'Main-Class': 'com.johnathanmarksmith.gradle.HelloWorld' } 
    } 
gradle build 
java -jar ./build/libs/smith-1.0.jar 

我的构建结果是成功

:compileJava UP-TO-DATE 
:processResources UP-TO-DATE 
:classes UP-TO-DATE 
:jar 
:assemble 
:compileTestJava UP-TO-DATE 
:processTestResources UP-TO-DATE 
:testClasses UP-TO-DATE 
:test UP-TO-DATE 
:check UP-TO-DATE 
:build 

BUILD SUCCESSFUL 
+0

它仍然不起作用。我应该把这个包放在main或main/java下面吗? –

+0

我的错误,它的工作原理!谢谢!! –

回答

3

的问题是,您创建不在src/main/java下的项目的根包文件夹。

它应该是:

mkdir -p src/main/java/com/johnathanmarksmith/gradle 
vi src/main/java.com/johnathanmarksmith/gradle/HelloWorld.java 

现在应该很好地工作。

相关问题