gpt4 book ai didi

java - Jar 可分发不工作

转载 作者:行者123 更新时间:2023-12-01 13:53:51 25 4
gpt4 key购买 nike

我在 Netbeans 中使用 DropboxAPI 开发了一个应用程序,并使用 Swing 构建 GUI。

如果我从 IDE 运行该应用程序,它可以正常工作,但是当我清理并构建它后,/dist 中的 .jar 文件根本无法打开。

所以我打开了命令行,但出现了此错误

java -jar "%PATH_TO_MY_APP%\FileTransferSpeedMonitor.jar"
Error: An unexpected error occurred while trying to open file %PATH_TO_MY_APP\FileTransferSpeedMonitor.jar

因此我决定使用不同的关键字进行多次搜索,但没有结果。最奇怪的是,当我尝试运行其中包含 static void main 方法的 .class 文件时,我收到一条错误,指出没有定义 main 方法,尽管它在 IDE 中工作正常。

我不确定下面的不匹配是否相关,因为其他 Swing 应用程序工作正常(例如:摄氏度华氏度教程),无论如何,我的应用程序似乎没有抛出任何异常或任何错误的迹象,但我需要找出导致这一切的原因。

C:\Users>java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) Client VM (build 24.45-b08, mixed mode, sharing)

和 Netbeans 7.3.1

Product Version: NetBeans IDE 7.3.1 (Build 201306052037)
Java: 1.7.0_05; Java HotSpot(TM) Client VM 23.1-b03
Runtime: Java(TM) SE Runtime Environment 1.7.0_05-b05
System: Windows 7 version 6.1 running on x86; Cp1252; en_US (nb)
...

稍后编辑#1 - 添加manifest.mf数据

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.4
Created-By: 1.7.0_05-b05 (Oracle Corporation)
Class-Path: lib/dropbox-core-sdk-1.7.5-javadoc.jar lib/dropbox-core-sd
k-1.7.5-sources.jar lib/dropbox-core-sdk-1.7.5.jar lib/jackson-core-2
.2.3.jar lib/org-apache-commons-io.jar
X-COMMENT : Main-Class will be added automatically by build
Main-Class: dbftsm.swing.ExploreDBX

稍后编辑 #2 - 添加 CLI 的输出,根本没有任何意义

%path_to_buld%\dist>java FileTransferSpeedMonitor.jar
Error: Could not find or load main class FileTransferSpeedMonitor.jar

最佳答案

list 文件必须位于具有准确位置 META-INF/MANIFEST.MF 的 JAR 中。

您的 dist 文件夹必须包含 lib 文件夹中的所有必需依赖项,通常:

%path_to_buld%\dist\lib\dropbox-core-sdk-1.7.5.jar
%path_to_buld%\dist\lib\jackson-core-2.2.3.jar
%path_to_buld%\dist\lib\org-apache-commons-io.jar

Class-Path 属性中声明 -sources.jar-javadoc.jar 没有意义。

您上次测试错误消息的原因是缺少 -jar 选项。

关于java - Jar 可分发不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19752984/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com