Child pages
  • How to create a non-existent pom
Skip to end of metadata
Go to start of metadata

It might happen, that you depend on an artifact that depends on some artifact for that no pom is available. This is (right now) e.g. the case for spring-2.5.6: this depends on javax.ejb.ejb-3.0, whereas only javax.ejb.ejb-api-3.0 is available in the repos.

In such a case (the mentioned pom has no deps itself) you might want to create such a pom from within your buildfile:

def create_pom(art)
  artifact art do |a|
    if !File.exist?(a.name)
      # Create the directory
      mkdir_p File.dirname(a.name)
      # Create and write the pom file
      File.open a.name, "w" do |f|
        f.write <<-XML
<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>#{a.group}</groupId>
  <artifactId>#{a.id}</artifactId>
  <version>#{a.version}</version>
</project>
        XML
      end
    end
  end
end

# Now use it:
create_pom 'javax.ejb:ejb:pom:3.0'
  • No labels