2013-04-09 5 views
0

Я использую XFileDialog (https://code.google.com/p/xfiledialog/) вместо JFileChooser, но я хочу связать dll внутри .jar, поэтому мне не нужно отправлять их с помощью приложения.Bundling .dll внутри .jar

Поэтому я добавил их в проект, но я не уверен, как их ссылать. Внутри XFileDialog.class я нашел System.loadLibrary("xfiledialog64");

Я предполагаю, что это должно быть изменено на System.load("xfiledialog64").

Это правильно?

Другая проблема заключается в том, что я не могу редактировать файл .class из Eclipse. Означает ли это, что мне нужно отредактировать .class в источнике и затем скомпилировать его?

ответ

3

Поскольку это, по-видимому, настольное приложение. Одна стратегия заключается в ее запуске с использованием Java Web Start. Если запущен с использованием веб-запуска, туземцы будут загружаться, поскольку они обычно загружаются.

Вот JNLP used to load the applet demo.

<?xml version="1.0" encoding="UTF-8"?> 
<jnlp spec="1.0+" codebase="" href=""> 
    <information> 
     <title>helloapplet</title> 
     <vendor>stevpan</vendor> 
</information> 

    <resources os="Windows" arch="x86"> 
     <nativelib href="win_x86_dll.jar" /> 
    </resources> 

    <resources os="Windows" arch="amd64"> 
     <nativelib href="win_x64_dll.jar" /> 
    </resources> 

    <resources> 
     <!-- Application Resources --> 
     <j2se version="1.6+" 
       href="http://java.sun.com/products/autodl/j2se" /> 
     <jar href="hello.jar" main="true" /> 
    </resources> 

    <applet-desc 
     name="helloapplet" 
     main-class="helloapplet" 
     width="640" 
     height="480"> 
    </applet-desc> 
    <update check="background"/> 
</jnlp>     
+0

Я думаю, что должен быть способ связать его внутри Jar .. – Omid

+0

Это (в единственном числе)? Вышеупомянутый JNLP предполагает, что вы должны начать думать о «их» (множественном числе). –