Bu yüzden CI uygulamasında, bir uygulama üzerinde değişiklik yapmak için bir değişiklik olduğunda Nexus'a yayımlanan bir işim var.SBT Yalnızca sürüm mevcut değilken yayınla
./sbt idempotent yayımlamak yapmak için bir yolu var mı? Çünkü bazen biz çünkü geçici sorun nedeniyle işi yeniden çalıştırın istiyor ve onunla dışarı hata edeceğiz: Biz sürüm numarasını çarptı ettik Çünkü
[16:31:24]java.io.IOException: destination file exists and overwrite == false
[16:31:24] at org.apache.ivy.plugins.repository.url.URLRepository.put(URLRepository.java:75)
[16:31:24] at org.apache.ivy.plugins.repository.AbstractRepository.put(AbstractRepository.java:130)
[16:31:24] at sbt.ConvertResolver$ChecksumFriendlyURLResolver$class.put(ConvertResolver.scala:78)
[16:31:24] at sbt.ConvertResolver$PluginCapableResolver$1.put(ConvertResolver.scala:103)
[16:31:24] at org.apache.ivy.plugins.resolver.RepositoryResolver.publish(RepositoryResolver.java:216)
. Şu anda bir hacky ile gidiyorum:
./sbt publish || true
Yani CI iş doesnt çıkış 1 ve hata. Daha iyi bir yolu var mı?
IMHO, bu çok zarif bir çözüm olurdu. Çapraz derleme yaparken ve atlanan diğer sürümü yayınlamanız gerektiğinde SBT yapılandırmamla sıklıkla bir hata buluyorum. Scala 2.11 için eser yayınlamaktan kurtulmak istemiyorum çünkü sadece 2.10 zaten var. –