summaryrefslogtreecommitdiff
path: root/project
diff options
context:
space:
mode:
authorStefan Zeiger <szeiger@novocode.com>2016-04-26 14:10:33 +0200
committerStefan Zeiger <szeiger@novocode.com>2016-05-06 13:55:12 +0200
commitb74e4ddf53933f80d3d43d0741700cf17f32a9a7 (patch)
tree31cb92966a93453951092802d96fad5788cdcc66 /project
parentafb14588edeb199ad5b6b2deedb55abe3c998503 (diff)
downloadscala-b74e4ddf53933f80d3d43d0741700cf17f32a9a7.tar.gz
scala-b74e4ddf53933f80d3d43d0741700cf17f32a9a7.tar.bz2
scala-b74e4ddf53933f80d3d43d0741700cf17f32a9a7.zip
Publish usable Scala distributions to Ivy repositories
- sbt requires a `default` configuration in the Scala distribution but doesn’t publish such a configuration to Ivy repositories by default. This is not a problem when publishing to a Maven repository because Maven doesn’t use the concept of configurations and Ivy creates a standard set (including `default`) when resolving artifacts from Maven repositories, but it prevents the use of any Scala distribution published with `publishLocal`. The underlying issue is that sbt requires `default` instead of `default(compile)`. We work around this limitation by publishing a dummy `default` configuration. - sbt has hardcoded dependencies on the `scala-library` artifact of type `jar`. In the tradition of `sbt-osgi` we used type `bundle` when publishing via Ivy but this makes the artifacts unusable from sbt. We now publish the OSGi bundles directly as type `jar` (which is compatible with how they appear in Ivy after resolving from a Maven repository). - We have to be more aggressive about not publishing certain subprojects, otherwise `ivy.xml` files could still be published even when using `publishArtifacts := false`. - `removePomDependencies` now also modifies `ivy.xml` in addition to the Maven POM so that bogus dependencies do not leak into the Ivy descriptors. Fixes https://github.com/scala/scala-dev/issues/130
Diffstat (limited to 'project')
-rw-r--r--project/Osgi.scala1
1 files changed, 0 insertions, 1 deletions
diff --git a/project/Osgi.scala b/project/Osgi.scala
index ed961d1c27..4456c94190 100644
--- a/project/Osgi.scala
+++ b/project/Osgi.scala
@@ -39,7 +39,6 @@ object Osgi {
},
packagedArtifact in (Compile, packageBin) <<= (artifact in (Compile, packageBin), bundle).identityMap,
// Also create OSGi source bundles:
- artifact in (Compile, packageBin) ~= (_.copy(`type` = "bundle")),
packageOptions in (Compile, packageSrc) += Package.ManifestAttributes(
"Bundle-Name" -> (description.value + " Sources"),
"Bundle-SymbolicName" -> (bundleSymbolicName.value + ".source"),