1

我有 3 个 jars:jar1、jar2 和 jar3,在同一路径中可以在其他 pc 中更改(例如:c:\prova)

当我运行 jar1 时,它会将 jar2 移动到 Windows Sturtup 文件夹中。

我希望 jar2 在每次 Windows 启动时简单地激活 jar3,但它当然找不到留在第一条路径中的 jar3。

所以我希望 jar1 在移动它时或至少在第一次调用它时将引用(在本例中为路径 c:\prova)传递给 jar2。

我觉得这很困难,因为:我无法在 jar2 中的文本文件中写入路径:jar 中的文本文件不可写。

我无法在 windows 启动文件夹中写入文本文件:它将在每次 win 启动时打开..

我不能将路径作为参数传递,这对第一次调用会很好,但我不能为连续调用存储这个值。

对不起我的英语不好,谢谢你的帮助!

4

1 回答 1

1

在 jar2 中添加文件Path.txt(带有 jar3 的路径):

Runtime.getRuntime().exec("jar uf jar2.jar Path.txt");

读取 jar2 中的文件(Startup 是我的类名):

        String s = "/Path.txt";
        is = Startup.class.getResourceAsStream(s);
        br = new BufferedReader(new InputStreamReader(is));
        while (null != (line = br.readLine())) {
            list.add(line);
        }

谢谢我!

于 2012-09-19T15:17:13.683 回答