Getting maven project version and artifact ID from pom while running in Eclipse

Create a property file

src/main/resources/project.properties

with the below content

version=${project.version}
artifactId=${project.artifactId}

Now turn on maven resource filtering

  <resource>
    <directory>src/main/resources</directory>
    <filtering>true</filtering>
  </resource>

so that this file is processed into

target/classes/project.properties

with some content similar to this

version=1.5
artifactId=my-artifact

Now you can read this property file to get what you want and this should work every time.

final Properties properties = new Properties();
properties.load(this.getClassLoader().getResourceAsStream("project.properties"));
System.out.println(properties.getProperty("version"));
System.out.println(properties.getProperty("artifactId"));

Leave a Comment