2011-09-06 2 views
5

원격으로 액세스 할 수있는 상자에서 실행중인 fsc 프로세스를 설정하려고합니다.Fast Scala 컴파일러 원격 서버를 어떻게 실행합니까?

임시 디렉토리를 공유해야한다는 것을 알고 있습니다.

그러나 나는 노트북 컴퓨터에 연결하는 데 어려움을 겪고 있습니다.

나는 시도하고있다 :

fsc -Djava.io.tmpdir=/tempscala -server 127.0.0.1:8080 

하지만 그냥 나에게 사용 옵션을 제공합니다 ...

도움말을?

+0

일부 소스 파일을 제공하셨습니까? – jeha

+0

'-Djava.io.tmpdir =/tempscala'를 설정하는 이유는 무엇입니까? 'fsc -verbose -d/tempscala foobar.scala'와 같지 않아야합니까? – jeha

+0

내가 아는 한 _source_ 및 _target_ 디렉토리를 공유해야합니다. 그러나 원격 서버에서 fsc를 사용하는 것이 애매한 것이 아니며 반드시 작동하는 것은 아닙니다. –

답변

2

나는 fsc가하는 일을 잘못 이해하고 있다고 생각합니다. fsc는 컴파일 할 호출간에 살아있는 데몬 프로세스를 시작하므로 매번 초기화 작업을 모두 수행 할 필요가 없습니다. 공유 파일 시스템이 없으면 실제로 완전히 별도의 상자에서 컴파일을 실행할 수 없습니다.

Jeha가 말했듯이 -D를 사용하여 임시 디렉토리를 지정한 다음 컴파일하려는 스칼라 파일을 지정해야합니다 (이것이 사용 지침을 얻는 이유입니다. 중요한 정보가 누락되었습니다).

fsc가 실행될 포트를 선택하고 처음 실행할 때 알려주므로 -server도 삭제해야합니다. 당신이 fsc -shutdown 실행을 완료 할 때 마지막으로 다음, 당신은 재 컴파일 할 때 다음

[Temp directory: /var/folders/oj/ojMgC8mDH4uK9fM5cjlK1E+++TI/-Tmp-/scala-devel/temp] 
[Port number: 54056] 
[Connected to compilation daemon at port 54056] 

은, 그냥 다시 같은 명령을 호출 (서버 포트를 지정하기 위해 여전히 필요 없음) : 당신은 라인 같은 것을 볼 수 있습니다

설명서 페이지의 경우 here

+1

내가 추가하는 것을 잊어 버렸습니다. 처음에 내가 가지고 있던 잡화는 컴파일 할 파일을 찾을 수 없다는 불평이었습니다. 클래스 패스에서 오타를 만들었지 만, -shutdown을 누른 다음 고정 클래스 패스로 fsc 명령을 다시 실행해야합니다. 그렇지 않으면 변경하지 않았다는 것을 알 수 없습니다. – CPJ