JAR文件

时间:2016-12-06 14:15:51

标签: java eclipse swing

我正在开发一个Java Swing应用程序,我有一个文件(例如 key.text ),其中包含解密密钥,解密是使用第三方库执行的,我正在做的解密是将key.txt传递给库方法。

Eclipse工作区结构

src
  com.org.controller
  com.org.beans
  key.txt

我尝试过以下方式传递bin路径,

String keyFilePath = "bin/key.txt";
aesEncrypt.setSecretKey(keyFilePath); // passing path to library method
当我在eclipse中运行时,

代码片段工作正常,但是当我将它打包在jar中时,它无法正常工作。

我尝试以下列方式使用getResource(),但这也无效。

URL url = this.getClass().getResource("/key.txt");
File file = new File(url.toURI());
String keyFilePath = file.getAbsolutePath();
aesEncrypt.setSecretKey(new File(keyFilePath).getAbsolutePath()); // passing path to library method  

所以我的问题是,如何传递驻留在构建jar中的资源路径?

2 个答案:

答案 0 :(得分:2)

由于您调用的API似乎需要文件名,因此您需要将资源(即zip条目而非实际文件)复制到实际文件中:

<div onclick="check()">CLICK HERE</div>

<script>
  function check() {
    var str = "abcdefg";
    var xx = "abc";
    if (/\+xx+\b/.test(str)) 
    {
      alert("found");
    } else 
    {
      alert("not found");
    }
  }
</script>

答案 1 :(得分:0)

这可能不是您想要的,但您可以在与jar相同的文件夹中创建一个名为bin的文件夹。然后将key.txt文件放在那里。