문제

Mac에서 라이트 테이블을 사용하여 Ubuntu-Hosted Nrepl에 연결된 LTALL을 사용하고 새 프로그램 / Project.Clj를 만드는 방법은 무엇입니까?누구도 내 접근 방식이 무엇인지 이해하도록 도와 주실 수 있습니까?

나는 Ubuntu 서버, 가상 상자, leiningen, 받침대 및 받침대 'helloworld'샘플 프로그램이 있고, 이는 브라우저에 표시됩니다.HelloWorld 프로그램을 실행하는 동일한 REPL에 연결할 수 없습니다.서버 측 객체에 대한 클라이언트 측 액세스 또는 컨트롤이 없습니다.

MAC 호스트 LT에서 클라이언트 - 서버 클라 클루어 개발을하고 서버 측 프로그램을 만드는 것입니다. repl에서 볼 수 있습니다.

나는이 영역에서 직관적 인 것을 알지 못하고, 읽은 조언은 기존 프로젝트 / 답장에 연결될 것이라고 제안합니다.클라이언트에서 새 개체를 만들고 싶습니다.

도움이 되었습니까?

해결책

사물의 서버 측에 대해 주로 말하고 있다고 가정 (ClojureScript에 대해 많이 알지 못함), 원격 REPL에 대한 새로운 프로젝트 및 코드를 대화식으로 설정하는 방법은 다음과 같습니다.

  1. vm의 lein new project-name.
  2. project.clj를 원하는 방식으로 설정하십시오. 종속성을 포함해야합니다!
  3. VM에서 REPL을 시작하고 포트 번호
  4. 에 유의하십시오.
  5. 버전 제어 (git)에 코드를 확약하십시오.
  6. Mac OSX에서 LightTable에서 동일한 코드베이스를 체크 아웃합니다.
  7. 원격 REPL에 연결하십시오.
  8. core.clj를 열거 나 새 네임 스페이스 파일을 만들고 해킹을 시작하십시오.
  9. 코드 스 니펫 또는 전체 파일을 평가합니다.
  10. 이 문제를 예견하는 잠재적 인 문제가 있습니다. 첫째, 종속성을 추가 할 때마다 버전 컨트롤을 변경하고 VM 작업 복사본을 동기화하고 REPL을 다시 시작한 다음 LightTable을 Remote Repl에 다시 연결해야합니다.

    둘째, 프로젝트가 몇 가지 네임 스페이스를 초과하여 성장 할 때 문제가있을 수 있습니다. 귀하의 네임 스페이스가 프로젝트에서 다른 네임 스페이스가 필요한 경우 원격 REPL 프로세스가 로컬 클래스 경로를로드하려고 시도합니다. 종속성이 거기에 있거나 변경되지 않은 경우, LightTable은 와이어 위로 필요한 네임 스페이스를 보낼만큼 충분히 똑똑하다고 생각하지 않습니다. 그것을 시도하고 실제 행동이 무엇인지 알려주십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top