누군가 SBT를 사용하는 올바른 방법을 설명 할 수 있습니까?
나는 이것에 대해 옷장에서 내릴거야! SBT를 이해하지 못합니다. 내가 말 했으니 이제 제발 도와주세요.
모든 길은 로마로 통한다, 그것은 SBT에 대해 동일합니다 : 시작하려면 SBT
이 SBT
, SBT Launcher
, SBT-extras
, 등, 다음을 포함하고 저장소에 결정하는 여러 가지 방법이 있습니다. '최상의'방법이 있습니까?
때때로 나는 조금 길을 잃기 때문에 묻는 것입니다. SBT 문서는 매우 철저하고 완료,하지만 난 사용할 때 자신이 모르는 발견 build.sbt
하거나 project/build.properties
또는 project/Build.scala
나 project/plugins.sbt
.
그러면 재미있어집니다. Scala-IDE
그리고 SBT
- 함께 사용하는 올바른 방법은 무엇입니까? 가장 먼저 오는 것은 무엇입니까? 닭고기 또는 계란?
가장 중요한 것은 아마도 프로젝트에 포함 할 올바른 저장소와 버전을 어떻게 찾 느냐는 것입니다. 기계를 꺼내서 해킹을 시작하면 되나요? 나는 모든 것과 부엌 싱크대를 포함하는 프로젝트를 자주 찾는다. 그리고 깨달았다.
간단한 예로, 지금은 새로운 프로젝트를 시작하고 있습니다. 나는의 최신 기능을 사용하려면 SLICK
및 Scala
이 아마 SBT의 최신 버전이 필요합니다. 시작하기위한 올바른 요점은 무엇이며 그 이유는 무엇입니까? 어떤 파일에서 정의해야하며 어떻게 표시되어야합니까? 이 작업을 수행 할 수 있다는 것을 알고 있지만 모든 것이 어디로 가야하는지에 대한 전문가의 의견을 듣고 싶습니다 (왜 거기에 가야하는지 보너스가있을 것입니다).
저는 SBT
지금까지 1 년 넘게 소규모 프로젝트에 사용 하고 있습니다. 나는 사용한 SBT
다음 SBT Extras
(약간의 두통이 마술처럼 사라지게 만들었 기 때문에), 왜 둘 중 하나를 사용 해야하는지 잘 모르겠습니다. 나는 사물이 어떻게 조화를 이루는 지 ( SBT
및 저장소) 이해하지 못해 약간 좌절하고 있으며, 이것이 인간의 용어로 설명 될 수 있다면 다음 사람이 이런 식으로 오는 많은 어려움을 덜어 줄 것이라고 생각합니다.
가장 중요한 것은 아마도 프로젝트에 포함 할 올바른 저장소와 버전을 어떻게 찾 느냐는 것입니다. 기계를 꺼내서 해킹을 시작하면 되나요? 나는 모든 것을 포함하는 프로젝트와 부엌 싱크대를 자주 찾습니다.
Scala 기반 종속성의 경우 저자가 권장하는대로 진행합니다. 예 : http://code.google.com/p/scalaz/#SBT 는 다음을 사용함을 나타냅니다.
libraryDependencies += "org.scalaz" %% "scalaz-core" % "6.0.4"
또는 https://github.com/typesafehub/sbteclipse/ 에 추가 할 위치에 대한 지침이 있습니다.
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "2.1.0-RC1")
Java 기반 종속성의 경우 http://mvnrepository.com/ 을 사용 하여 무엇이 있는지 확인한 다음 SBT 탭을 클릭합니다. 예를 들어 http://mvnrepository.com/artifact/net.sf.opencsv/opencsv/2.3 은 다음을 사용함을 나타냅니다.
libraryDependencies += "net.sf.opencsv" % "opencsv" % "2.3"
그런 다음 기계를 꺼내서 해킹을 시작하십시오. 운이 좋으면 동일한 jar에 의존하지만 호환되지 않는 버전을 사용하는 jar를 사용하지 않는 것이 좋습니다. Java 에코 시스템을 고려할 때 모든 항목과 주방 싱크를 포함하는 경우가 많으며 종속성을 제거하거나 필수 종속성이 누락되지 않았는지 확인하는 데 약간의 노력이 필요합니다.
간단한 예로, 지금은 새로운 프로젝트를 시작하고 있습니다. SLICK 및 Scala의 최신 기능을 사용하고 싶습니다.이를 위해서는 최신 버전의 SBT가 필요할 것입니다. 시작하기위한 올바른 요점은 무엇이며 그 이유는 무엇입니까?
나는 sbt에 대한 면역을 점진 적으로 구축 하는 것이 제정 한 포인트라고 생각합니다 .
이해했는지 확인하십시오.
- 범위 형식
{<build-uri>}<project-id>/config:key(for task-key)
- 설정의 3 개 맛 (
SettingKey
,TaskKey
,InputKey
) -에서 "작업 키"라는 섹션을 읽어 http://www.scala-sbt.org/release/docs/Getting-Started/Basic-Def
이 4 페이지를 항상 열어 두어 다양한 정의와 예제를 바로 찾아 볼 수 있습니다.
- http://www.scala-sbt.org/release/docs/Getting-Started/Basic-Def
- http://www.scala-sbt.org/release/docs/Detailed-Topics/index
- http://harrah.github.com/xsbt/latest/sxr/Keys.scala.html
- http://harrah.github.com/xsbt/latest/sxr/Defaults.scala.html
최대 사용 확인 show
및 inspect
및 탭 완성을 설정, 의존성, 정의와 관련 설정의 실제 값에 익숙해 질 수 있습니다. 나는 당신이 발견하게 될 관계 inspect
가 어디에도 문서화되어 있다고 믿지 않습니다 . 더 나은 방법이 있다면 그것에 대해 알고 싶습니다.
sbt를 사용하는 방법은 다음과 같습니다.
- sbt-extras 사용 -쉘 스크립트를 가져 와서 프로젝트의 루트에 추가하십시오.
- sbt 설정
project
을위한MyProject.scala
파일이 있는 폴더를 만듭니다 . 나는build.sbt
접근 방식 보다 이것을 훨씬 선호합니다 -스칼라이고 더 유연합니다. - 크리에이트
project/plugins.sbt
파일을 당신의 IDE에 해당하는 플러그인을 추가 할 수 있습니다. eclipse, intellij 또는 ensime 용 프로젝트 파일을 생성 할 수 있도록 sbt-eclipse, sbt-idea 또는 ensime-sbt-cmd 중 하나입니다. - 프로젝트의 루트에서 sbt를 시작하고 IDE 용 프로젝트 파일을 생성합니다.
- 이익
IDE 프로젝트 파일은 sbt에 의해 생성되었으므로 확인하지 않아도되지만 그렇게하려는 이유가있을 수 있습니다.
여기에서 이와 같은 설정 예를 볼 수 있습니다 .
프로젝트 템플릿 및 시드와 함께 제공되는 sbt를 호출하는 멋진 방법 인 Typesafe Activator 사용 : https://typesafe.com/activator
Activator new
Fetching the latest list of templates...
Browse the list of templates: http://typesafe.com/activator/templates
Choose from these featured templates or enter a template name:
1) minimal-java
2) minimal-scala
3) play-java
4) play-scala
(hit tab to see a list of all templates)
참고 URL : https://stackoverflow.com/questions/11411242/can-someone-explain-the-right-way-to-use-sbt
'Programming' 카테고리의 다른 글
VC ++ 코드 DOM은 VS 애드온에서 액세스 할 수 있습니까? (0) | 2020.08.19 |
---|---|
iOS 7.0.3에서“HelveticaNeue-Italic”에 발생한 일 (0) | 2020.08.19 |
f : selectItem (s)에서 열거 형 값을 사용하는 방법 (0) | 2020.08.18 |
pip를 사용하여 Windows에 PyQt4를 설치하는 방법은 무엇입니까? (0) | 2020.08.18 |
SQL : 문자열이 같지 않은 수행 방법 (0) | 2020.08.18 |