gpt4 book ai didi

java - 如何将 JAR 文件作为 Java 程序运行,特别是 http ://iapg. jade-hs.de/personen/brinkhoff/generator/

转载 作者:行者123 更新时间:2023-11-29 08:57:32 26 4
gpt4 key购买 nike

我需要从这个项目运行一个特定的类iapg.jade-hs.de/personen/brinkhoff/generator/

生成器的 jar 文件位于此处:iapg.jade-hs.de/personen/brinkhoff/generator/RunTime21.zip

关于运行部分的文档不多。主要假设用户足够先进,知道如何执行此操作。

jar 文件包含以下内容:

META-INF/MANIFEST.MF
spatial/BasicSpatialQuery.class
drawables/DrawableObjects.class
spatialdb/DefaultGeometryFactory.class
spatial/LayerWindowQuery.class
util/Num.class
...
...
...
generator2/ExternalObject.class
generator2/DefaultDataGenerator.class
drawables/DrawableCircle.class
spatial/ExactMatchQuery.class
drawables/DrawableObject.class
generator2/ConstantObjectGenerator.class
drawables/DrawableSpatialSearchTreeObject.class

我需要使用生成器附带的特定参数运行 generator2/DefaultDataGenerator。

Manifest 文件中只有这个:

Manifest-Version: 1.0

有一个 .bat 文件(假设它是为 Windows 提供的)包含以下内容:

java -classpath .;generator21.jar generator2.DefaultDataGenerator propOL.txt

问题:我不知道如何将 generator2/DefaultDataGenerator 作为 Java 程序(不是 applet)实际运行

我试过:

1) java -jar generator21.jar 这给了我

Failed to load Main-Class manifest attribute from...

2) java -类路径。 ; ./generator21.jar generator2.DefaultDataGenerator propOL.txt这给了我同样的错误

Failed to load Main-Class manifest attribute from /home/username/generator/generator21.jar

3) 已尝试根据 http://docs.oracle.com/javase/tutorial/deployment/jar/modman.html 编辑 list 文件并在其中添加一行内容:

Main-Class: generator2.DefaultDataGenerator 

主要是因为 generator2.DefaultDataGenerator 包的源文件可以在这里找到:iapg.jade-hs.de/personen/brinkhoff/generator/CompleteSource21.zip

显示以下内容:

    /**
* main entrypoint - starts the part when it is run as an application
* @param args args[0] = name of the property file
*/
public static void main(java.lang.String[] args) {
if ((args.length > 0) && (args[0] != null))
propFilename = makeAbsolute(args[0]);
main ("generator2.DefaultDataGenerator");

但是,当我编辑 Manifest 文件并尝试通过 java -jar jarfile.jar 运行它时我收到以下错误:

     Exception in thread "main" java.lang.NoClassDefFoundError:   
generator2/DefaultDataGenerator Caused by:
java.lang.ClassNotFoundException: generator2.DefaultDataGenerator
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: generator2.DefaultDataGenerator.
Program will exit

请协助。

谢谢

最佳答案

这就是问题所在:我需要指定 jar 所在的目录,而不是 jar 本身。 java -classpath ../generator/generator2.DefaultDataGenerator 让它运行

关于java - 如何将 JAR 文件作为 Java 程序运行,特别是 http ://iapg. jade-hs.de/personen/brinkhoff/generator/,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19432675/

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