2011-11-22 4 views
2

'hello'모듈에 따라 'world'라는 모듈이 있습니다. 다음은 'world'의 프로젝트 구조입니다. enter image description here스칼라 코드를 msil에 컴파일하는 동안 jar 종속성을 찾을 수 없습니다.

여기서 lib는 디렉토리 종속성 저장이고 bin은 misl 아티팩트의 출력 디렉토리입니다.

나는 MISL로 컴파일하려면 다음 명령을 사용하십시오 scalacompiler.exesvn co http://lampsvn.epfl.ch/svn-repos/scala/scala-experimental/trunk/bootstrap 실험 프로젝트입니다

SET SCALA_NET_DIRECTORY=E:\svn\scala-experimental\bootstrap 
%SCALA_NET_DIRECTORY%\bin\scalacompiler.exe -Xassem-extdirs %SCALA_NET_DIRECTORY%\bin -target:msil -d bin -classpath %SCALA_NET_DIRECTORY%\lib\hello-1.0.jar src\main\scala\my\world\App.scala 

.

그리고 오류가있어 :

enter image description here

어떤 Scala.Net 전문가가 나에게 제안을 줄 수 있습니까? 명령 행의 옵션의

답변

0

하나는 내가 (명령 행에서

-Xshow-class MyMainClass 

를 제공하지 않음으로써) 당신이 .DLL로 인사-1.0을 컴파일 첫 싶은 생각

-classpath %SCALA_NET_DIRECTORY%\lib\hello-1.0.jar 

를 읽고 다음 안녕하세요-1.0.dll와

src\main\scala\my\world\App.scala 

은 (.exe 인, 나는 추측) 컴파일은 -Xassem-extdir 중 하나에서 찾을 수 s 폴더. 이러한 공통 pool.jar 나는 제 3의 의존성을 필요로하는 경우 http://www.srtsolutions.com/tag/scala

+0

에서 Scala.Net 그러나 사용에

팁과 트릭? –

+0

-Xassem-extdirs를 여러 번 사용하고 -Xassem-extdirs에 지정된 각 폴더에는 컴파일 할 프로그램이 의존하는 여러 어셈블리가 포함될 수 있습니다. http://www.benbarefield.com/blog/?p=79에서 보여주는 예제가 있습니다. 64 비트와 관련하여 CLR JIT 컴파일러는 32 비트 카운터가 가지고 있지 않은 몇 가지 예외를 두 번 던졌습니다 (이것은 Scala.Net의 잘못이 아닙니다.) JITter가 수정 될 때까지이 문제를 극복하는 한 가지 방법은 corflags입니다. /32Bit + –

관련 문제