gpt4 book ai didi

java - 在java程序中执行jar文件

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

我想创建一个java程序来使用YUI压缩css文件我是java新手。

我的代码是:

import java.io.BufferedInputStream;
import java.io.IOException;

public class Run extends Object
{
public static void main(String args[]) throws IOException, InterruptedException
{
System.out.println("Calling jar");

Process p = Runtime.getRuntime().exec("java -Xmx32m -jar yui.jar in.css");
BufferedInputStream bis = new BufferedInputStream(p.getInputStream());
synchronized(p)
{
p.waitFor();
}

System.out.println(p.exitValue());

int b = 0;
while((b = bis.read()) > 0)
{
System.out.print((char)b);
}

System.out.println("Called jar");
}
}

我引用了here .

命令:

java -Xmx32m -jar yui.jar in.css

在cmd中工作正常,但当我运行上面的程序时没有得到任何输出我得到的上面的输出是:

Calling jar
1
Called jar

请告诉我我做错了什么或者正确的方法是什么。

最佳答案

您得到“1”是因为流中没有任何内容可供读取。

我猜测您正在尝试从 Eclipse 或其他 IDE 运行该文件。如果是这样,您需要将 yui.jarin.css 文件放置到与 Run 类所在的同一目录中。

如果您使用默认运行配置,您只需将文件放入 Eclipse 项目的根目录中即可。例如,这对我有用:

Test
src
com
test
Run.java
yui.jar
in.css

处理您的情况的更好方法是使用绝对或相对路径,而不是仅指定 yui.jarin.css。为两个相对路径创建两个变量,然后创建命令字符串。

关于java - 在java程序中执行jar文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24888027/

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