여기에 질문이 있습니다. 자바 프로젝트 (또는 그 문제에 대해 컴파일 된 언어 프로젝트)에 Vagrant를 사용할 때 VM 또는 호스트에서 컴파일해야합니까? 또한 IDE와 모든 개발 도구가 VM 내부에서 실행되기를 원하십니까, 아니면 호스트에서 실행되기를 원하십니까?
Java IDE 및 컴파일 / 배포 프로세스가 Vagrant VM에서 작동하는 방식이 정확히 정의되지 않은 것 같습니다 . 일반적으로 내 인상은 코드가 호스트에서 편집되고 VM에서 실행되므로 컴파일되지 않은 언어에 적합합니다. Stackoverflow에 대한 다른 답변 은 추가 컴파일 단계로 인해 Vagrant가 컴파일 된 언어에 덜 유용하다는 것을 암시했지만 여전히 무엇을 할 수 있는지보고 싶습니다.
이미 생각해 본 몇 가지 :
VM에서 컴파일하는 이유
- 호스트에서 컴파일하는 경우 java는 설치할 소프트웨어 중 하나입니다.
- 호스트에서 컴파일하는 경우 호스트의 Java 버전을 VM의 최신 버전으로 수동으로 유지해야합니다.
- 호스트의 해당 Java 버전을 사용하지 못할 수 있습니다 (예 : Mac).
VM에 IDE가있는 이유
- 환경과 IDE 간의 긴밀한 통합, 바로 가기를 사용하여 애플리케이션 실행 가능
- 원격 디버깅없이 자바 애플리케이션 용 디버거를 연결할 수 있습니다 (1 단계 실행 / 디버그).
호스트에서 컴파일하는 이유
- 더 빠른 컴파일 시간
- VM을 프로덕션에 최대한 가깝게 유지하려는 경우
호스트에 IDE가있는 이유
- 호스트에서 코드를 편집하고 VM에서 실행하는 것은 방랑 규칙입니다.
- UI 성능 향상 (X 전달 및 VNC가 느림)
어떻게 생각하십니까? VM 또는 호스트 내부에서 IDE를 실행해야합니까? VM 또는 호스트 내부에서 컴파일해야합니까?