在JSP页面运行JAR文件

问题描述 投票:0回答:3

我正在尝试开发一个接受用户输入并将其转换为文本文件的网站。然后,该文本文件将用作 JAR 文件的输入。 (例如

java -jar encoder.jar -i text.txt
),jar 然后输出一个 BIN 文件供用户下载。

这个 jar 被设计为从命令行运行,我真的不知道在 JSP 页面中实现它的最佳方法。我创建了一些 Java 测试类,但到目前为止没有任何效果。

有人对可能的方法有什么建议吗?

java jsp jar
3个回答
3
投票

将其作为外部进程运行的另一种方法是在当前 JVM 中调用其主类:

  1. 提取/打开罐子的
    META-INF/MANIFEST.MF
  2. 识别
    Main-Class:
    。说它叫
    EncoderMainClass
  3. 调用其
    main
    方法:
    EncoderMainClass.main("-i", "text.txt")

这会更快,因为不需要创建新的操作系统进程,但可能存在安全考虑。


0
投票

你尝试过这样的事情吗

创建一个java文件

使用

ProcessBuilder
并启动一个新的 JVM。

这里有一些可以帮助您开始的东西:

ProcessBuilder pb = new ProcessBuilder("/path/to/java", "-jar", "your.jar", "thetextfile.txt");
pb.directory(new File("preferred/working/directory"));
Process p = pb.start(); 

ps:执行销毁进程的句柄,否则它将耗尽所有内存


0
投票

您可以将此 jar 放入 classpath 上的 Web 应用程序并使用它的类和方法。如果你没有源代码,如果你有 javadoc 会更好。但即使不在

classpath
中,您也可以尝试 examplethis example

© www.soinside.com 2019 - 2024. All rights reserved.