2016-05-02 4 views
1

im insrug strangle with an strange Problem。 私は、コンソールアプリケーション(process.start())を呼び出すdll(Navisionのためのaddinとして)を書いています。 IKVMを使用してpdfbox.net(v1.8.4)を使用するコンソールアプリケーション。IKVMが見つからないpdfbox.netを使用しているときにprocess.startで実行された場合プロバイダ

コンソールアプリケーションを直接(Visual Studioでcmdまたは "start"を使用して)実行すると、すべて正常に動作します。

javax.xml.parsers.FactoryConfigurationError: Provider com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl not found

マイprocess.start:私はクラスlibaryからprocess.start()throuコンソールアプリケーションを起動した場合 または任意の他の(テスト - )プロジェクト私は例外を取得(ユニットテストは、(MSTEST)でテスト済み)例外に関する

string[] args = {pdfFilePath, zugferdFilePath}; 
ProcessStartInfo processStartInfo = new ProcessStartInfo 
{ 
    FileName = exeFile, 
    Arguments = string.Join(" ", args), 
    WorkingDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), 
    ErrorDialog = true, 
    RedirectStandardError = true, 
    RedirectStandardOutput = true, 
    UseShellExecute = false 
}; 
Process process = Process.Start(processStartInfo); 

詳細: メッセージ:

Provider com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl not found

出典:

クラスのlibから

IKVM.OpenJDK.XML.API

のStackTrace:

((java.lang.Throwable)_exception).StackTrace " bei javax.xml.parsers.DocumentBuilderFactory.newInstance() bei Mustang.ZUGFeRDImporter.parse() in C:\GIT\KCorp.NAV.Zugferd\KCorp.Nav.Zugferd.Split\Mustang\ZUGFeRDImport.cs:Zeile 124. bei KCorp.Nav.Zugferd.Split.Zaumzeug.showZUGFeRD(String filepath,String xmlFilePath) in C:\GIT\KCorp.NAV.Zugferd\KCorp.Nav.Zugferd.Split\Zaumzeug.cs:Zeile 30."

誰がこの問題を解決する方法のアイデアを持っていますか?

さらに詳しい情報が必要な場合はお知らせください。

ありがとうございます。

答えて

0

これはクラスローダーの問題です。

var s = new [email protected](); 

これは、ロードするためにアセンブリを強制し、私のために私は、この問題が発生したすべての時間を働いている:あなたが工場を呼び出す行の前に次を追加してみてください。

関連する問題