0

以下は私のプロジェクトの境界です

ウィンドウズ7 64ビット

jre 1.6 64 ビット

ジェイコブ dll (ジェイコブ-1.17-M2-x64.dll)

問題は

jacob-1.17-M2-x64.dll は jre 1.7 ではサポートされていますが、jre 1.6 ではサポートされていません

例外がスローされました

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jacob-1.17-M2-x64 in java.library.path
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at com.jacob.com.LibraryLoader.loadJacobLibrary(LibraryLoader.java:184)
    at com.jacob.com.JacobObject.<clinit>(JacobObject.java:107)
    at com.osg.sqe.env.framework.control.web.Outlook.main(Outlook.java:14)

jre1.7で問題なくアプリケーションを実行できるため、私の質問は「java.library.path」の問題ではないため、複製された質問として扱わないでください。

4

2 に答える 2

0

本当じゃない。jacob-1.17-M2-x64次のコマンドを使用して実行しました。

%java% -Djava.library.path=%jacobPath% -cp %cp% %class%

jacob への間違ったパスを入力すると、次のメッセージが表示されます。

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jacob-1.17-M2-x64 in java.library.path

java -version:

java version "1.6.0_30"
Java(TM) SE Runtime Environment (build 1.6.0_30-b12)
Java HotSpot(TM) 64-Bit Server VM (build 20.5-b03, mixed mode)

そして、これは私のスクリプト全体です:

@echo off
set jacobPath=C:\lang\java\jacob-1.17-M2
set cp=.;%jacobPath%\jacob.jar
set class=JacobFso
rem following line was to test 32-bit version
rem set java="C:\Program Files (x86)\Java\jre6\bin\java.exe"
set java=java.exe
set jdk=C:\Program Files\Java\jdk1.6.0_30\bin
"%jdk%\javac.exe" -cp %cp% %class%.java
if errorlevel 1 goto leave
rem my real, longer line, which I usually use
rem %java% -Djava.library.path=%jacobPath% -cp %cp% -Xms5m -Xss5m -Xmx5m -Dcom.jacob.debug=false -Dcom.jacob.autogc=false %class%
%java% -Djava.library.path=%jacobPath% -cp %cp% %class%
:leave
于 2012-10-24T06:30:33.683 に答える
0

そのdllをEclipseのネイティブライブラリとしてインポートします。そしたら絶対うまくいく

于 2014-09-12T17:13:19.327 に答える