carueda / mill-jbuildinfo

Mill plugin to generate java class with build info

Version Matrix


This is a mill module similar to BuildInfo but for Java. It will generate a Java class containing information from your build.

Project home:

To declare a module that uses this plugin, extend the com.github.carueda.mill.JBuildInfo trait and provide the desired information via the buildInfoMembers method:

import $ivy.`com.github.carueda::jbuildinfo:0.1.2`
import com.github.carueda.mill.JBuildInfo
import mill.T

object project extends JBuildInfo {
  def buildInfoMembers: T[Map[String, String]] = T {
      "name" -> "some name",
      "version" -> "x.y.z"

This will generate:

public class BuildInfo {
  public static final String getName() { return "some name"; }
  public static final String getVersion() { return "x.y.z"; }

Configuration options

  • def buildInfoMembers: T[Map[String, String]]

    The map containing all member names and values for the generated class.

  • def buildInfoClassName: String, default: BuildInfo

    The name of the class that will contain all the members from buildInfoMembers.

  • def buildInfoPackageName: Option[String], default: None

    The package name for the generated class.