SBT Native Packager의 도움을 받아 다른 설정 파일로 빌드를 만들려고합니다. SBT Native Packager : 서로 다른 설정으로 같은 패키지를 만듭니다.
my-app
--/project
----/build.properties
----/plugins.sbt
--/src
----/main
------/java
------/resources
------/scala
----/test
------/java
------/resources
------/scala
build.sbt
그래서 내 프로젝트에 SBT-네이티브 포장기 플러그인을 추가하고
SBT submodule approach을 반복하기로 결정했다 : 나는 스칼라 프로젝트에 대한 표준 프로젝트 레이아웃을 가지고있다.
akka {
loglevel = INFO
stdout-loglevel = INFO
loggers = ["akka.event.slf4j.Slf4jLogger"]
default-dispatcher {
fork-join-executor {
parallelism-min = 8
}
}
http {
server {
server-header = "PinPoint REST API"
request-timeout = "10.seconds"
}
}
}
database {
dataSourceClass = "org.postgresql.ds.PGSimpleDataSource"
properties = {
databaseName = "pg_db"
user = "alex"
password = ""
}
numThreads = 10
}
를 실행 한 다음, 여기에
import sbt.Keys._
scalaVersion in ThisBuild := "2.12.1"
lazy val app = project
.in(file("."))
.settings(
name := "backend",
version := "1.0",
libraryDependencies ++= {
val akkaVersion = "2.4.17"
val akkaHttpVersion = "10.0.5"
Seq(
"com.typesafe.akka" %% "akka-actor" % akkaVersion,
"com.typesafe.akka" %% "akka-http" % akkaHttpVersion,
"com.typesafe.akka" %% "akka-http-spray-json" % akkaHttpVersion
)
}
)
lazy val devPackage = project
.in(file("build/dev"))
.enablePlugins(JavaAppPackaging)
.settings(
name := "backend-dev",
resourceDirectory in Compile := (resourceDirectory in (app, Compile)).value,
mappings in Universal += {
((resourceDirectory in Compile).value/"dev.conf") -> "conf/application.conf"
}
)
.dependsOn(app)
그리고이 (모두 SRC/메인/자원에 있습니다 application.conf 및 dev.conf 있습니다 : 내 build.sbt 파일과 같은 방법
내가 터미널에서 sbt devPackage/stage
를 실행 한 후
include "application"
database {
dataSourceClass = "org.postgresql.ds.PGSimpleDataSource"
properties = {
databaseName = "pg_db_dev"
user = "alex"
password = "secure_password"
}
numThreads = 10
}
나는 루트 folde에 새로운 디렉토리 "빌드"를 얻을 프로젝트의 r. 그러나 내부 : build/dev/target/universal/stage/ 실행 가능한 sh 스크립트가있는 "bin"폴더가 없습니다.
어떻게 해결할 수 있습니까?
: 일부 ("foo.bar를 =
당신이해야 할 모든 당신의
devPackage
프로젝트에 설정을 추가입니다 .본관"). 자세한 내용은 http://www.scala-sbt.org/sbt-native-packager/archetypes/java_app/를 참조하십시오. – kardapoltsev@ kardapoltsev 전 메인 클래스가 하나뿐입니다. –