首页 文章

Gradle应用程序插件|生成的脚本中的'lib'文件夹不正确

提问于
浏览
2

我正在尝试使用Gradle应用程序插件,如下所示: -

build.gradle : -

group 'com.samsoft'
version '1.0-SNAPSHOT'

defaultTasks("clean", "build")

apply plugin: 'java'
apply plugin: 'application'
apply plugin: 'idea'
mainClassName = 'com.samsoft.Main'
sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
}

src/main/java.Main.java : -

package com.samsoft;
public class Main {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}

运行gradle构建后,我们有PRJECT / build / libs和PROJECT / build / scripts文件夹创建和其他 . libs具有可执行jar,其依赖项和脚本具有.bat和.sh文件来运行应用程序 .

PROBLEM

脚本文件的类路径不正确 set CLASSPATH=%APP_HOME%\lib\hello-gradle-1.0-SNAPSHOT.jar

lib中缺少's'字符,在尝试运行时会导致 Error: Could not find or load main class com.samsoft.Main .

我怎样才能解决这个问题 ?

Gradle 3.5 Java 8

1 回答

  • 2

    scripts 目录中的脚本不打算运行,这里只是包含在最终分发中 .

    如果您查看 distributions 目录,您可以看到tar和zip存档 . 这些将包含根目录下的脚本和包含jar文件的 lib 目录 . 这就是 CLASSPATH 的内容:

    CLASSPATH=%APP_HOME%\lib\hello-gradle-1.0-SNAPSHOT.jar
    

    %APP_HOME% 是解压缩/解压缩文件的文件夹

相关问题