Do not add subprojects like libraryDependencies, not even at the time publish.
Now for publishing modules you can create a simple variable publishSettings:
val publishSettings : Seq[Setting[_]] = Seq(
publishTo := Some("your company releases" at "http://yourrepository"),
credentials += Credentials(
"Repository",
"repositoryUrl",
"username",
"password!"
),
publishMavenStyle := true,
publishArtifact in Test := false,
pomIncludeRepository := { _ => true }
)
lazy val main = Project(..).aggregate(subproject1, subproject2, // etc)
lazy val subproject1 = Project(
settings = Project.defaultSettings ++ publishSettings
);
lazy val subproject2 = Project(
settings = Project.defaultSettings ++ publishSettings
).dependsOn(subproject1)
SBT . libraryDependencies, dependsOn.