Protobuf v3 osgi (#29172)

* register ActorSystem reference under ActorFactoryRef interface name

* reformat code

* add OSGi headers for akka-protobuf-v3

* change private package to only include proto files
This commit is contained in:
barthorre 2020-06-15 13:44:11 +02:00 committed by GitHub
parent 17f7f1108a
commit 2c4e114ecd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 1 deletions

View file

@ -303,6 +303,7 @@ lazy val protobuf = akkaModule("akka-protobuf")
.disablePlugins(MimaPlugin)
lazy val protobufV3 = akkaModule("akka-protobuf-v3")
.settings(OSGi.protobufV3)
.settings(AutomaticModuleName.settings("akka.protobuf.v3"))
.enablePlugins(ScaladocNoVerificationOfDiagrams)
.disablePlugins(MimaPlugin)
@ -317,6 +318,7 @@ lazy val protobufV3 = akkaModule("akka-protobuf-v3")
exportJars := true, // in dependent projects, use assembled and shaded jar
makePomConfiguration := makePomConfiguration.value
.withConfigurations(Vector(Compile)), // prevent original dependency to be added to pom as runtime dep
packagedArtifact in (Compile, packageBin) := Scoped.mkTuple2((artifact in (Compile, packageBin)).value, OsgiKeys.bundle.value),
packageBin in Compile := ReproducibleBuildsPlugin
.postProcessJar((assembly in Compile).value), // package by running assembly
// Prevent cyclic task dependencies, see https://github.com/sbt/sbt-assembly/issues/365

View file

@ -6,7 +6,6 @@ package akka
import com.typesafe.sbt.osgi.OsgiKeys
import com.typesafe.sbt.osgi.SbtOsgi._
import com.typesafe.sbt.osgi.SbtOsgi.autoImport._
import sbt._
import sbt.Keys._
import net.bzzt.reproduciblebuilds.ReproducibleBuildsPlugin
@ -65,6 +64,17 @@ object OSGi {
val protobuf = exports(Seq("akka.protobuf.*"))
val protobufV3 = osgiSettings ++ Seq(
OsgiKeys.importPackage := Seq(
"!sun.misc",
scalaJava8CompatImport(),
scalaVersion(scalaImport).value,
configImport(),
"*"),
OsgiKeys.exportPackage := Seq("akka.protobufv3.internal.*"),
OsgiKeys.privatePackage := Seq("google.protobuf.*")
)
val jackson = exports(Seq("akka.serialization.jackson.*"))
val remote = exports(Seq("akka.remote.*"))