Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java IntelliJ在创建jar工件后,没有主要的主要的主阿曲布他_Java_Intellij Idea_Executable Jar - Fatal编程技术网

Java IntelliJ在创建jar工件后,没有主要的主要的主阿曲布他

Java IntelliJ在创建jar工件后,没有主要的主要的主阿曲布他,java,intellij-idea,executable-jar,Java,Intellij Idea,Executable Jar,我正试图从中构建一个jar人工制品。我将appache commons io和org.json作为库导入。提取arefact时,我发现一个清单文件,其中只包含org.json的信息。你可以找到那个罐子。我的项目中的清单文件根本没有反映出来。感谢您的帮助。当我在控制台中用java-jar运行jar时,我得到了一个错误:XXX.jar中没有主清单Atribute。从您在github上提供的项目中,我做了以下更改,使它用java-jar运行。但首先也是最重要的是,您在github上链接的项目并不是通过

我正试图从中构建一个jar人工制品。我将appache commons io和org.json作为库导入。提取arefact时,我发现一个清单文件,其中只包含org.json的信息。你可以找到那个罐子。我的项目中的清单文件根本没有反映出来。感谢您的帮助。当我在控制台中用java-jar运行jar时,我得到了一个错误:XXX.jar中没有主清单Atribute。

从您在github上提供的项目中,我做了以下更改,使它用
java-jar
运行。但首先也是最重要的是,您在github上链接的项目并不是通过全新的
gradle build
构建的

要运行此命令,您需要将
commons io
org.json
添加到
build.gradle
文件中。这使得
build.gradle
文件看起来像:

plugins {
    id 'java'
}

version '1.0-SNAPSHOT'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    compile group: 'commons-io', name: 'commons-io', version: '2.6'
    compile group: 'org.json', name: 'json', version: '20190722'
    testCompile group: 'junit', name: 'junit', version: '4.12'
}

jar {
    manifest {
        attributes(
                'Main-Class': 'de.bergwacht.esslingen.Main'
        )
    }
}
您的项目还有许多未使用的依赖项,这些依赖项应该被删除,它们会产生渐变警告

AnweseneheitsTableModel
中删除导入:

import com.sun.org.apache.xpath.internal.operations.Bool;
import com.sun.javaws.exceptions.InvalidArgumentException;
import com.sun.org.apache.xpath.internal.operations.Bool;
import com.sun.xml.internal.fastinfoset.algorithm.BooleanEncodingAlgorithm;
DienstprotocollinvalidargumentException
中删除导入:

import com.sun.org.apache.xpath.internal.operations.Bool;
import com.sun.javaws.exceptions.InvalidArgumentException;
import com.sun.org.apache.xpath.internal.operations.Bool;
import com.sun.xml.internal.fastinfoset.algorithm.BooleanEncodingAlgorithm;
main表单中
删除导入:

import com.sun.org.apache.xpath.internal.operations.Bool;
import com.sun.javaws.exceptions.InvalidArgumentException;
import com.sun.org.apache.xpath.internal.operations.Bool;
import com.sun.xml.internal.fastinfoset.algorithm.BooleanEncodingAlgorithm;
此时,您可以运行
/gradlew jar
,这将在
build/libs
下为您创建一个jar

您可以使用
java-jarbuild/libs/BWOrgaTool-1.0-SNAPSHOT.jar运行该jar

该命令将运行它,它将遇到NPE:

Exception in thread "main" java.lang.NullPointerException
    at de.bergwacht.esslingen.forms.MainForm.<init>(MainForm.java:138)
    at de.bergwacht.esslingen.Main.main(Main.java:42)
线程“main”java.lang.NullPointerException中的异常 位于de.bergwacht.esslingen.forms.MainForm.(MainForm.java:138) 位于de.bergwacht.esslingen.Main.Main(Main.java:42)
但这是另一个问题,您可以在此时开始调试程序。

您正在执行什么操作来创建错误?你想用intellij“运行”它吗?你想和gradle一起建吗?你想用jar-jar运行它吗?用java-jar运行提供的项目不会编译。至少使用
渐变构建
。我怀疑这是因为您没有为您的依赖项添加build.gradle依赖项。让我尝试添加到build.gradle,看看它最终会出现在哪里。问题是,我正在尝试使用IntelliJ进行构建,但尚未删除gradle设置。Swing和gradle存在一个已知的问题,它会阻止Swing组件正确初始化。这就是你看到NPE的原因。你知道怎么做吗。