2013-04-19 5 views
2

Java 및 .Net에서 프로젝트 정보를 조작 할 수있는 라이브러리 인 MPXJ를 사용하고 있습니다. (http://mpxj.sourceforge.net/에 대한 자세한 정보) Visual Studio 2012로 작업 중입니다. 콘솔 응용 프로그램이나 windows.forms 응용 프로그램에 VSTO 프로젝트 템플릿을 사용하면 프로그램이 오류없이 실행됩니다.파일 또는 어셈블리를로드 할 수 없습니다. IKVM.OpenJDK.Core

System.IO.FileNotFoundException : 파일 또는 어셈블리 "IKVM.OpenJDK.Core, 버전 = 7.0를로드 할 수 없습니다 나는 셰어는 WebPart 템플릿을 사용할 때

는하지만, 나는 다음과 같은 오류 메시지가 표시 .4335.0, Culture = neutral, PublicKeyToken = 13235d27fcbfff58 "또는 해당 종속성 중 하나입니다. 지정한 모듈을 찾을 수 없습니다.
파일 : "IKVM.OpenJDK.Core, 버전 = 7.0.4335.0, 문화 = 중립, PublicKeyToken = 13235d27fcbfff58" MA_SQL_Workload.UpdateStarter.startDBUpdate에서 MA_SQL_Workload.MppTaskController..ctor()
(에서
)

그래서 "IKVM.OpenJDK.Core"어셈블리를 찾을 수 없습니다.

MppTaskController.cs 클래스는 MPXJ 라이브러리를 사용하는 유일한 클래스입니다. MppTaskController를 인스턴스화 할 때 오류가 발생했습니다.

그리고 정확히 동일한 클래스를 콘솔 또는 양식 응용 프로그램에서 사용할 때 제대로 작동합니다. 원할 경우 windows.form 응용 프로그램을 보낼 수 있습니다.

프로젝트 탐색기의 이미지를 게시하고 싶지만 이미지를 게시하려면 적어도 10 개의 평판이 필요합니다. 아마도 프로젝트 폴더에서 오류가 잘못된 경로가 될 수 있습니다.

원한다면 더 많은 정보를 보여 주거나 프로젝트 폴더를 보내고 싶습니다.

무엇이 실패라고 생각합니까? 여기

는 자신의 실행 파일을 사용하여 서버에 색슨 구성 요소를 설치했는지 확인 빈 \ 디버그 \

IKVM.OpenJDK.Beans.dll 
IKVM.OpenJDK.Charsets.dll 
IKVM.OpenJDK.Core.dll 
IKVM.OpenJDK.Jdbc.dll 
IKVM.OpenJDK.Security.dll 
IKVM.OpenJDK.SwingAWT.dll 
IKVM.OpenJDK.Text.dll 
IKVM.OpenJDK.Util.dll 
IKVM.OpenJDK.XML.API.dll 
IKVM.OpenJDK.XML.Bind.dll 
IKVM.OpenJDK.XML.Parse.dll 
IKVM.Runtime.dll 
junit.dll 
MA_SQL_Workload.dll 
MA_SQL_Workload.pdb 
MA_SQL_Workload.wsp 
Microsoft.Office.Interop.MSProject.dll 
mpxj.dll 
poi-3.7-20101029.dll 
+0

예외 메시지를 영어로 번역하십시오. 당신은 더 나은 도움을 얻을 것이고 다른 사람들은이 예외를 찾을 때 도움이 될 것입니다. –

+0

GAC에 어셈블리가 있고 셰어 포인트 서버에 어셈블리가 없습니다? bin 폴더에 어셈블리를 추가해보십시오. – Yeronimo

+0

예, C : \ Users \ sp \ Documents \ Visual Studio 2012 \ Projects \ MA_SQL_Workload \ MA_SQL_Workload \ bin \ Debug 폴더에 * .dll 파일이 모두 있습니다. – Nipon

답변

1

\ 폴더 ... \ 프로젝트 이름 \ WebpartName에있는 모든 * .dll 파일입니다. 동일한 오류가 발생하여 올바른 위치에 서버에 내 종속성이 있지만 Saxon 구성 요소를 실행 파일을 통해 설치할 때까지이 오류가 발생합니다. 행운을 빕니다. HTH.

0

내가 설치가 GAC에 필요한 DLL을로드 거라 생각하지만 설치하지 않고 당신이 색슨 HE를 사용하는 각 시스템에서 GAC에 다음 DLL을 로딩하여 작업을 얻을 수 있어야합니다 :

saxon9he.dll 
saxon9he-api.dll 
IKVM.OpenJDK.Charsets.dll 
IKVM.OpenJDK.Core.dll 
IKVM.OpenJDK.Text.dll 
IKVM.OpenJDK.Util.dll 
IKVM.OpenJDK.XML.API.dll 
IKVM.Runtime.dll 

실행하여 GAC

"<Path To GACUtil>\GACUtil.exe" /if <Path to dll>\IKVM.OpenJDK.Charsets.dll 

내가 닷넷 4.5을 사용하고, 내 컴퓨터에서 Gacutil.exe를가 C에, 그래서에 하나의 DLL을로드 관리자 권한으로 다음 명령 다음 : \ 프로그램 Files \ Microsoft SDK를 \ Windows \ v7.1 \ Bin \ NETFX 4.0 도구 \