reltool
으로 릴리스를 생성 중입니다. 출력 폴더 rel/lib
에는 아카이브에 패키지 된 ebin
폴더가있는 모든 응용 프로그램이 들어 있습니다. crypto
을 위해 :systools.make_tar는 .ez 아카이브에서 .app 파일을 찾을 수 없습니다.
crypto-2.2
crypto-2.2/priv/ (with some files in the priv folder)
crypto-2.2.ez
crypto-2.2.ez/crypto-2.2/ebin/crypto.app
crypto-2.2.ez/crypto-2.2/ebin/ (with some .beam files in the ebin folder)
은 내가 rel
폴더에 erl
를 시작합니다. 이 불평 systools:make_tar("releases/0.1/project").
를 호출 할 때
"/usr/home/g/work/project/rel/lib/crypto-2.2.ez/crypto-2.2/ebin"
그러나 아직이 할 수없는 다음 ebin
폴더의 경로 코드 경로에 다른 (그리고 유사 lib
폴더에있는 다른 앱) 사이 code:get_path().
수익을 즉 (릴리스에 언급 된 모든 응용 프로그램의 경우) .app
파일을 찾을 수 :
crypto: File not found: "crypto.app"
나는 그것을
systools
때문에 몇 가지 이유를 볼 수 없습니다 만의의
.app
파일이 아카이브에 참조하십시오.
path
옵션을 사용하여
make_tar
을 호출 할 때
ebin
폴더를 지정하려고했지만 작동하지 않는 것 같습니다 (
crypto.app
이 누락 된 것과 같은 오류). 또한 :
file:consult("/usr/home/g/work/project/rel/lib/crypto-2.2.ez/crypto-2.2/ebin/crypto.app").
나에게 : {error,enotdir}
을 준다.
아마도 systools
은 아직 아카이브를 처리하지 못합니까? reltool
으로 만든 릴리스에서 tar 아카이브를 만드는 다른 방법이 있습니까? 어떤 도움이라도 대단히 감사하겠습니다.
감사합니다. 알고 있습니다. 그러나 이것은 .ez 아카이브를 완전히 비활성화하는 것을 의미합니다 (현재 ebin 만 거기에 간다). 따라서이 기능을 비활성화하는 대신 작동 시키거나 .ez 아카이브 내의 파일에 액세스하는 일부 오래된 모듈에서 실제로 작동하지 않는 방법을 찾아야합니다. 그러나 어떤면에서는 문제의 해결 방법입니다. 내가 뭘 (이상적으로) 찾고 있지 않습니다. BTW 또 다른 해결 방법은 모든 .ez 아카이브 압축을 풀고 systools을 실행하는 것입니다. 그러나 다시 한번 말하지만, 여전히 올바른 해결책으로 보이지 않습니다. – Amiramix
알기. 나는 해결책을 모른다. 나는 .ez 파일 사용을 중단 한 정확한 이유를 기억하지 못한다. 그러나 나는 번거 로움을 느끼지 못한다고 결정한 충분한 합병증을 보았다. 얼랭 (Erlang) 메일 링리스트에 질문하지 않았다면, 그 편지를 추천 할 것입니다. – chops
감사합니다. – Amiramix