MavenBuildGenMain

mill.main.maven.MavenBuildGenMain
object MavenBuildGenMain extends MavenAndGradle[Model, Dependency]

Converts a Maven build to Mill by generating Mill build file(s) from POM file(s).

The generated output should be considered scaffolding and will likely require edits to complete conversion.

===Capabilities=== The conversion

  • handles deeply nested modules
  • captures project settings
  • configures dependencies for scopes:
    • compile
    • provided
    • runtime
    • test
  • configures testing frameworks:
    • JUnit 4
    • JUnit 5
    • TestNG
  • configures multiple, compile and test, resource directories

===Limitations=== The conversion does not support:

  • plugins, other than maven-compiler-plugin
  • packaging, other than jar, pom
  • build extensions
  • build profiles

Attributes

Source
MavenBuildGenMain.scala
Graph
Supertypes
trait MavenAndGradle[Model, Dependency]
trait BuildGenBase[Model, Dependency, Tree[Node[Model]]]
class Object
trait Matchable
class Any
Self type

Members list

Type members

Classlikes

case class Config(shared: Config, cacheRepository: Flag, processPlugins: Flag) extends ModelerConfig

Attributes

Source
MavenBuildGenMain.scala
Supertypes
trait Serializable
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Types

override type C = Config

Attributes

Source
MavenBuildGenMain.scala
override type ModuleFqnMap = Map[(String, String, String), String]

A Map mapping from a key retrieved from the original build tool (for example, the GAV coordinate for Maven, ProjectRef.project for sbt) to the module FQN reference string in code such as parentModule.childModule.

A Map mapping from a key retrieved from the original build tool (for example, the GAV coordinate for Maven, ProjectRef.project for sbt) to the module FQN reference string in code such as parentModule.childModule.

If there is no need for such a map, override it with Unit.

Attributes

Source
MavenBuildGenMain.scala

Value members

Concrete methods

override def extractIrBuild(cfg: Config, build: Node[Model], moduleFqnMap: Map[(String, String, String), String]): IrBuild

Attributes

Definition Classes
Source
MavenBuildGenMain.scala
def extractPomSettings(model: Model): IrPom

Attributes

Source
MavenBuildGenMain.scala
def extractScopedDeps(model: Model, packages: PartialFunction[(String, String, String), String], cfg: Config): IrScopedDeps

Attributes

Source
MavenBuildGenMain.scala
override def getArtifactId(model: Model): String

Attributes

Definition Classes
Source
MavenBuildGenMain.scala
override def getBaseInfo(input: Tree[Node[Model]], cfg: Config, baseModule: String, packagesSize: Int): IrBaseInfo

Attributes

Definition Classes
Source
MavenBuildGenMain.scala
def getMillSourcePath(model: Model): Path

Attributes

Source
MavenBuildGenMain.scala
override def getModuleFqnMap(moduleNodes: Seq[Node[Model]]): Map[(String, String, String), String]

Attributes

Definition Classes
Source
MavenBuildGenMain.scala
def getModuleSupertypes: Seq[String]

Attributes

Source
MavenBuildGenMain.scala
def getProjectGav(model: Model): (String, String, String)

Attributes

Source
MavenBuildGenMain.scala
def getPublishProperties(model: Model, cfg: Config): Seq[(String, String)]

Attributes

Source
MavenBuildGenMain.scala
def getRepositories(model: Model): Seq[String]

Attributes

Source
MavenBuildGenMain.scala
override def getSupertypes(cfg: Config, baseInfo: IrBaseInfo, build: Node[Model]): Seq[String]

Attributes

Definition Classes
Source
MavenBuildGenMain.scala
def interpMvn(dep: Dependency): String

Attributes

Source
MavenBuildGenMain.scala
def main(args: Array[String]): Unit

Attributes

Source
MavenBuildGenMain.scala
def mkPomParent(parent: Parent): IrArtifact

Attributes

Source
MavenBuildGenMain.scala
def processResources(input: List[Resource], millSourcePath: Path): Seq[SubPath]

Attributes

Source
MavenBuildGenMain.scala

Inherited methods

def convert(input: Tree[Node[Model]], cfg: C, shared: BasicConfig): Tree[Node[BuildObject]]

Attributes

Inherited from:
BuildGenBase
Source
BuildGenBase.scala
def convertWriteOut(cfg: C, shared: BasicConfig, input: Tree[Node[Model]]): Unit

Attributes

Inherited from:
BuildGenBase
Source
BuildGenBase.scala
override def extraImports: Seq[String]

Attributes

Definition Classes
Inherited from:
MavenAndGradle
Source
BuildGenBase.scala
override def getModuleTree(input: Tree[Node[Model]]): Tree[Node[Option[Model]]]

Attributes

Definition Classes
Inherited from:
MavenAndGradle
Source
BuildGenBase.scala