M1 Tip#12: Be Maven 2 Friendly

When you deploy a Maven 1 artifact to a remote Maven 1 repository you are also deploying your project's POM (project.xml).

If you're deploying to a Maven 1 repository that is synced with ibiblio your project.xml will find its way on the ibiblio Maven 1 repository where it'll automatically converted into a Maven 2 pom.xml file that will be put into the ibilio Maven 2 repository.

When this conversion happens the conversion tool tries its best to figure our things. However one thing it cannot do is guess the scopes of your Maven 1 dependencies. You'll need to provide information to help the tool.

Imagine you want to tag your junit dependency as a test dependency. Here's how it's done:

<dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
  <properties>
    <scope>test</scope>
  </properties>
</dependency>