title: SBT publish is not uploading jar file to artifactory (publish) java.io.IOException: PUT operation to URL failed with status code 400: Bad Request
body: <p>I've below <code>build.sbt</code> file</p>
  
  <pre><code>    name := "tads-akka-cluster-events"
      organization := "technorati"
      version := "0.0.3"
      scalaVersion := "2.11.12"
      crossScalaVersions := Seq("2.12.9", "2.13.0")
      publishMavenStyle := true
  
      PB.targets in Compile := Seq(
      scalapb.gen() -&gt; (sourceManaged in Compile).value
      )
  
      libraryDependencies += "com.thesamet.scalapb" %% "scalapb-runtime" % scalapb.compiler.Version.scalapbVersion % "protobuf"
  
      credentials += Credentials("Artifactory Realm", "artifactory.svcs.opal.synacor.com", "admin", "password")
  
      publishTo := {
      val nexus = "http://artifactory.svcs.opal.synacor.com/"
      if (isSnapshot.value)
          Some("repository.synacor.com-snapshots" at nexus + "artifactory/synacor-local")
      else
          Some("repository.synacor.com-releases"  at nexus + "artifactory/synacor-local")
      }
  </code></pre>
  
  <p>When I did <code>sbt publish</code>, I get below error - </p>
  
  <pre><code>    sbt:tads-akka-cluster-events&gt; publish
      [info] Packaging /Users/rajkumar.natarajan/Documents/Coding/misc/tads-akka-cluster-events/target/scala-2.11/tads-akka-cluster-events_2.11-0.0.3-sources.jar ...
      [info] Done packaging.
      [info] Wrote /Users/rajkumar.natarajan/Documents/Coding/misc/tads-akka-cluster-events/target/scala-2.11/tads-akka-cluster-events_2.11-0.0.3.pom
      [info] Updating ...
      [info] Done updating.
      [info] Packaging /Users/rajkumar.natarajan/Documents/Coding/misc/tads-akka-cluster-events/target/scala-2.11/tads-akka-cluster-events_2.11-0.0.3.jar ...
      [info] Packaging /Users/rajkumar.natarajan/Documents/Coding/misc/tads-akka-cluster-events/target/scala-2.11/tads-akka-cluster-events_2.11-0.0.3-javadoc.jar ...
      [info] Done packaging.
      [info] Done packaging.
      [info]  published tads-akka-cluster-events_2.11 to http://artifactory.svcs.opal.synacor.com/artifactory/synacor-local/technorati/tads-akka-cluster-events_2.11/0.0.3/tads-akka-cluster-events_2.11-0.0.3.pom
      [error] java.io.IOException: PUT operation to URL http://artifactory.svcs.opal.synacor.com/artifactory/synacor-local/technorati/tads-akka-cluster-events_2.11/0.0.3/tads-akka-cluster-events_2.11-0.0.3.jar failed with status code 400: Bad Request
      [error]         at org.apache.ivy.util.url.AbstractURLHandler.validatePutStatusCode(AbstractURLHandler.java:82)
      [error]         at sbt.internal.librarymanagement.ivyint.GigahorseUrlHandler.upload(GigahorseUrlHandler.scala:191)
      [error]         at org.apache.ivy.util.url.URLHandlerDispatcher.upload(URLHandlerDispatcher.java:82)
      [error]         at org.apache.ivy.util.FileUtil.copy(FileUtil.java:150)
      [error]         at org.apache.ivy.plugins.repository.url.URLRepository.put(URLRepository.java:84)
      [error]         at sbt.internal.librarymanagement.ConvertResolver$LocalIfFileRepo.put(ConvertResolver.scala:366)
      [error]         at org.apache.ivy.plugins.repository.AbstractRepository.put(AbstractRepository.java:130)
      [error]         at sbt.internal.librarymanagement.ConvertResolver$ChecksumFriendlyURLResolver.put(ConvertResolver.scala:118)
      [error]         at sbt.internal.librarymanagement.ConvertResolver$ChecksumFriendlyURLResolver.put$(ConvertResolver.scala:105)
      [error]         at sbt.internal.librarymanagement.ConvertResolver$$anonfun$defaultConvert$lzycompute$1$PluginCapableResolver$1.put(ConvertResolver.scala:165)
      [error]         at org.apache.ivy.plugins.resolver.RepositoryResolver.publish(RepositoryResolver.java:216)
      [error]         at sbt.internal.librarymanagement.IvyActions$.$anonfun$publish$5(IvyActions.scala:497)
      [error]         at sbt.internal.librarymanagement.IvyActions$.$anonfun$publish$5$adapted(IvyActions.scala:496)
      [error]         at scala.collection.TraversableLike$WithFilter.$anonfun$foreach$1(TraversableLike.scala:788)
      [error]         at scala.collection.Iterator.foreach(Iterator.scala:937)
      [error]         at scala.collection.Iterator.foreach$(Iterator.scala:937)
      [error]         at scala.collection.AbstractIterator.foreach(Iterator.scala:1425)
      [error]         at scala.collection.IterableLike.foreach(IterableLike.scala:70)
      [error]         at scala.collection.IterableLike.foreach$(IterableLike.scala:69)
      [error]         at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
      [error]         at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:787)
      [error]         at sbt.internal.librarymanagement.IvyActions$.publish(IvyActions.scala:496)
      [error]         at sbt.internal.librarymanagement.IvyActions$.$anonfun$publish$3(IvyActions.scala:144)
      [error]         at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:12)
      [error]         at sbt.internal.librarymanagement.IvyActions$.withChecksums(IvyActions.scala:157)
      [error]         at sbt.internal.librarymanagement.IvyActions$.withChecksums(IvyActions.scala:151)
      [error]         at sbt.internal.librarymanagement.IvyActions$.$anonfun$publish$1(IvyActions.scala:144)
      [error]         at sbt.internal.librarymanagement.IvyActions$.$anonfun$publish$1$adapted(IvyActions.scala:134)
      [error]         at sbt.internal.librarymanagement.IvySbt$Module.$anonfun$withModule$1(Ivy.scala:239)
      [error]         at sbt.internal.librarymanagement.IvySbt.$anonfun$withIvy$1(Ivy.scala:204)
      [error]         at sbt.internal.librarymanagement.IvySbt.sbt$internal$librarymanagement$IvySbt$$action$1(Ivy.scala:70)
      [error]         at sbt.internal.librarymanagement.IvySbt$$anon$3.call(Ivy.scala:77)
      [error]         at xsbt.boot.Locks$GlobalLock.withChannel$1(Locks.scala:95)
      [error]         at xsbt.boot.Locks$GlobalLock.xsbt$boot$Locks$GlobalLock$$withChannelRetries$1(Locks.scala:80)
      [error]         at xsbt.boot.Locks$GlobalLock$$anonfun$withFileLock$1.apply(Locks.scala:99)
      [error]         at xsbt.boot.Using$.withResource(Using.scala:10)
      [error]         at xsbt.boot.Using$.apply(Using.scala:9)
      [error]         at xsbt.boot.Locks$GlobalLock.ignoringDeadlockAvoided(Locks.scala:60)
      [error]         at xsbt.boot.Locks$GlobalLock.withLock(Locks.scala:50)
      [error]         at xsbt.boot.Locks$.apply0(Locks.scala:31)
      [error]         at xsbt.boot.Locks$.apply(Locks.scala:28)
      [error]         at sbt.internal.librarymanagement.IvySbt.withDefaultLogger(Ivy.scala:77)
      [error]         at sbt.internal.librarymanagement.IvySbt.withIvy(Ivy.scala:199)
      [error]         at sbt.internal.librarymanagement.IvySbt.withIvy(Ivy.scala:196)
      [error]         at sbt.internal.librarymanagement.IvySbt$Module.withModule(Ivy.scala:238)
      [error]         at sbt.internal.librarymanagement.IvyActions$.publish(IvyActions.scala:134)
      [error]         at sbt.Classpaths$.$anonfun$publishTask$4(Defaults.scala:2416)
      [error]         at sbt.Classpaths$.$anonfun$publishTask$4$adapted(Defaults.scala:2416)
      [error]         at scala.Function1.$anonfun$compose$1(Function1.scala:44)
      [error]         at sbt.internal.util.$tilde$greater.$anonfun$$u2219$1(TypeFunctions.scala:40)
      [error]         at sbt.std.Transform$$anon$4.work(System.scala:67)
      [error]         at sbt.Execute.$anonfun$submit$2(Execute.scala:269)
      [error]         at sbt.internal.util.ErrorHandling$.wideConvert(ErrorHandling.scala:16)
      [error]         at sbt.Execute.work(Execute.scala:278)
      [error]         at sbt.Execute.$anonfun$submit$1(Execute.scala:269)
      [error]         at sbt.ConcurrentRestrictions$$anon$4.$anonfun$submitValid$1(ConcurrentRestrictions.scala:178)
      [error]         at sbt.CompletionService$$anon$2.call(CompletionService.scala:37)
      [error]         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      [error]         at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      [error]         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      [error]         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      [error]         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      [error]         at java.lang.Thread.run(Thread.java:748)
      [error] (publish) java.io.IOException: PUT operation to URL http://artifactory.svcs.opal.synacor.com/artifactory/synacor-local/technorati/tads-akka-cluster-events_2.11/0.0.3/tads-akka-cluster-events_2.11-0.0.3.jar failed with status code 400: Bad Request
      [error] Total time: 2 s, completed Sep 3, 2019 4:12:46 PM
      sbt:tads-akka-cluster-events&gt; 
  </code></pre>
  
  <p>When I checked the repository I see pom, pom.md5 and pom.sha1. 
  But it is missing jar, jar.md5 and jar.sha1.
  <a href="https://i.stack.imgur.com/8Zryw.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/8Zryw.png" alt="repository missing jar"></a></p>
  
  <p>Why I'm getting this error? What I'm missing and how can I fix this issue?</p>