좋아, 이것은 약간의 호언 장담처럼 들리지만, Erlang에는 기본적으로 적절한 패키지 관리 시스템이 없다는 기술적 인 이유가 있는지 궁금합니다.Erlang이 보석과 같은 적절한 패키지 관리 시스템을 제공하지 않는 이유는 무엇입니까?
5
A
답변
15
실제 기술적 인 이유가 없습니다. erlang 소프트웨어를 설치하고 설치하는 고전적인 방법은 응용 프로그램을 사용하는 것만 다릅니다. 그리고 일부 사용 릴리스에 추가되었습니다.
자주 erlang 소프트웨어가 완전히 독립적으로 배포되는 것을 볼 수 있습니다. 즉, 모든 라이브러리와 가상 컴퓨터가 패키지에 함께 포함되어 있으며 외부 종속성이 필요하지 않습니다. 패키지의 개발 버전에서도이를 볼 수 있습니다. 예를 들어 Riak 데이터베이스의 소스 트리에는 모든 종속 라이브러리가 있습니다.
루비 (나 같은)에서 오는 많은 사람들이 생각할 수있는 것처럼 나쁜 생각은 아닙니다. 이 방법은 각 응용 프로그램 자체에 의존합니다. Erlang의 주요 목적 중 하나가 가장 신뢰할 수있는 것인데, 이는 각 애플리케이션이 자신의 라이브러리 버전을 가질 수 있다는 것을 모든면에서 의미있게 만듭니다. 따라서 한 앱이 다른 앱을 불안정하게 만들지 않도록합니다.
8
시도 rebar; 그것은 의존성 관리 시스템을 포함하는 erlang을위한 빌드 시스템입니다. gem은 rubygems.org와 같은 중앙 저장소가 없으므로 git url을 지정해야합니다. 하지만 중첩 된 deps를 다운로드해야하는 번거 로움을 덜어줍니다. 그것은 그 자체를 처리합니다.
그리고 Erlang의 철학은 다운로드 된 deps를 중앙 시스템 위치가 아닌 프로젝트 디렉토리에 보관함으로써 철학을 지킵니다. 이는 bundler의 배포 모드와 유사합니다.
관련 문제
- 1. Silverlight에서 IME 지원을 제공하지 않는 이유는 무엇입니까?
- 2. 큰 시퀀스에서 Erlang이 충돌하는 이유는 무엇입니까?
- 3. LinkedHashMap에서 인덱스를 통한 액세스를 제공하지 않는 이유는 무엇입니까? 자바 독에서
- 4. 새 파일 ("")이 기존 디렉토리를 제공하지 않는 이유는 무엇입니까?
- 5. 이 셸 명령이 원하는 결과를 제공하지 않는 이유는 무엇입니까?
- 6. RegQueryValueEx() XP에서 적절한 설정 값을 제공하지 않는 API
- 7. OracleParameter가 ICloneable을 구현하지만 Clone()을 제공하지 않는 이유는 무엇입니까?
- 8. 다음 코드가 원하는 답변을 제공하지 않는 이유는 무엇입니까?
- 9. Controls 컬렉션이 모든 IEnumerable 메서드를 제공하지 않는 이유는 무엇입니까?
- 10. C++ STL이 해시 테이블과 공용 구조체를 제공하지 않는 이유는 무엇입니까?
- 11. magento가 개발자를위한 가이드 또는 매뉴얼을 제공하지 않는 이유는 무엇입니까?
- 12. 인텔 TBB가 부스트와 같은 조건부 변수를 제공하지 않은 이유는 무엇입니까?
- 13. NSDateFromatter가 적절한 MMMM 값을 제공하지 않습니다.
- 14. 보석과 플러그인의 차이점은 무엇입니까?
- 15. 보석과 플러그인의 차이점은 무엇입니까?
- 16. Emacs 패키지 관리
- 17. XText에서 제공하지 않는 ANTLR의 기능은 무엇입니까?
- 18. 이 쿼리가 적절한 인덱스를 사용하지 않는 이유는 무엇입니까?
- 19. Linq to Sql 적절한 데이터를 제공하지 않음
- 20. 패키지 메모리 관리
- 21. 패키지 파일과 같은 오류가 올바르게 표시되지 않은 이유는 무엇입니까?
- 22. 적절한 벡터 메모리 관리
- 23. 적절한 Java 패키지 계층 구조?
- 24. nhibernate가 UoW와 같은 적절한 세션 관리자와 함께 제공되지 않는 이유는 무엇입니까?
- 25. CoreData가 NSFetchRequest와 같은 NSDeleteRequest 클래스를 제공하지 않는 이유
- 26. 콘텐츠 관리 시스템을 사용하지 않는 블로그 웹 사이트가 있습니까?
- 27. SO와 같은 태깅 시스템을 만드는 방법은 무엇입니까?
- 28. 컬렉션이 초기화되지 않는 가장 적절한 예외는 무엇입니까?
- 29. Gdb는 간단한 std :: string 캐치되지 않는 예외에 스택을 제공하지 않습니다.
- 30. 분산 버전 제어 시스템을 통한 릴리스 관리
예, 갈 수있는 좋은 방법 인 것 같습니다. 그러나 Riak에 관해서는 설치하는 데 많은 문제가 있었지만 관련 라이브러리를 포함하는 개념이 유용합니다. – Zubair