2016-07-15 2 views
0

У меня есть следующие в моем build.sbt файл для использования Java на основе .deb создания пакета и публикации в хранилище Artifactory:Как решить ошибку изменения для построения deb с помощью sbt-native-packager?

enablePlugins(JavaAppPackaging, DebianPlugin, JDebPackaging, DebianDeployPlugin) 

Однако, когда я пытаюсь сделать debian:publish, я получаю ошибку:

Creating changes file: /foo/bar/target/bar_1.0.0-SNAPSHOT_all.changes 
java.lang.RuntimeException: Cannot generate .changes file without a changelog 
    at scala.sys.package$.error(package.scala:27) 
    at com.typesafe.sbt.packager.debian.DebianNativePackaging$$anonfun$debianNativeSettings$1.apply(NativePackaging.scala:49) 
    at com.typesafe.sbt.packager.debian.DebianNativePackaging$$anonfun$debianNativeSettings$1.apply(NativePackaging.scala:47) 
    at scala.Function6$$anonfun$tupled$1.apply(Function6.scala:35) 
    at scala.Function6$$anonfun$tupled$1.apply(Function6.scala:34) 
    at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47) 
    at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40) 
    at sbt.std.Transform$$anon$4.work(System.scala:63) 
    at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228) 
    at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228) 
    at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17) 
    at sbt.Execute.work(Execute.scala:237) 
    at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228) 
    at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228) 
    at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159) 
    at sbt.CompletionService$$anon$2.call(CompletionService.scala:28) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 
[error] (debian:genChanges) Cannot generate .changes file without a changelog 
[error] Total time: 1 s, completed 15-Jul-2016 09:47:53 

Я пытался добавить

changelog in Debian := "" 

к моему build.sbt, как сделать cumented в the sbt native packager documentation (ну, документация не указала, какой тип это было, но я думал, что sbt скажет мне, был ли у меня неправильный тип, чтобы это было хорошо). Но потом я получил:

/foo/bar/build.sbt:31: error: not found: value changelog 
changelog in Debian := "" 
^ 
[error] Type error in expression 
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? 

Я искал пример, показывающий установки изменений, но я не мог найти.

ответ

1

DebianDeployPlugin, похоже, не работает с JDebPackaging, и мне не хватает гуру sbt, чтобы понять, почему.

Но просто создать файл .deb, достаточно добавить:

debianChangelog in Debian := Some(file("debian/changelog")) 

и создать файл, содержащий debian/changelog

project-name (x.y.z) UNRELEASED; urgency=low 

    * Initial no-op application. 

-- Your Name <[email protected]> Fri, 15 Jul 2016 12:18:00 +0100 
-1

Пробег: changelog in Debian := None.

1

Игнорирование журнала изменений настроек. Пожалуйста, добавьте следующие строки в build.sbt

import com.typesafe.sbt.packager.SettingsHelper._ 
makeDeploymentSettings(Debian, packageBin in Debian, "deb") 

Следующая строка говорит DPKG-Деб запустить только deb building phase без changelog generation phase

 Смежные вопросы

  • Нет связанных вопросов^_^