| <?xml version="1.0"?> |
| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| <document xmlns="http://maven.apache.org/XDOC/2.0" |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 https://maven.apache.org/xsd/xdoc-2.0.xsd"> |
| <!-- TODO: include back into site, after checking which are complete, add to instructions on how to contribute docs --> |
| <properties> |
| <title>Documentation Required</title> |
| <author email="brett@apache.org">Brett Porter</author> |
| </properties> |
| <body> |
| <section name="Documentation Required"> |
| <p> |
| This page lists some of the most pressing documentation needs. If you feel something is missing, please be sure |
| to let us know at the |
| <a href="./mailing-lists.html">Maven Users Mailing List</a>. |
| </p> |
| <h4>Documentation for users</h4> |
| <ul> |
| <li>new SNAPSHOT handling - |
| <i>partially done on Brett's blog</i> |
| </li> |
| <li>guide to dependencies, including: |
| <ul> |
| <li>dependency scoping - <i>especially system scope</i></li> |
| <li>version range specifications</li> |
| <li>conflict resolution</li> |
| </ul> |
| </li> |
| <li>deployment mechanism</li> |
| <li>dependency management</li> |
| <li>plugin management - |
| <i>in progress by J Matthew Pryor and John Casey</i> |
| </li> |
| <li>plugin configuration</li> |
| <li>plugin downloading - |
| <i>partial on Brett's blogs</i> |
| </li> |
| <li>report generation</li> |
| <li>project inheritence and company wide strategy</li> |
| <li>plugin documentation</li> |
| <li>using POM-properties in conjunction with plugin configuration to abstract child-POM configs</li> |
| <li>archetypes - writing and using</li> |
| <li>plugin usage guide/summary for core plugins - <i>esp. release plugin</i></li> |
| <li>strategy for migrating from Ant builds</li> |
| <li>strategy for migrating from Maven 1.x builds - <i>esp. plugins that don't convert directly</i></li> |
| </ul> |
| <h4>Documentation for plugin authors</h4> |
| <ul> |
| <li>Beanshell examples</li> |
| <li>plugin writing guide</li> |
| <li>report writing guide</li> |
| <li>site customisation guide</li> |
| <li>common tips and tricks for accessing project/build data</li> |
| <li>guide to available parameter expressions</li> |
| <li>list of standards for submitting new plugins (minimum documentation, test coverage?)</li> |
| </ul> |
| <h4>Documentation for Maven developers</h4> |
| <ul> |
| <li>Lifecycle architecture</li> |
| <li>High level architecture, components explanation</li> |
| <li>Intro to Plexus</li> |
| <li>contributors guide (add to current and consolidate, walk through some first steps)</li> |
| </ul> |
| <h4>Additional Notes</h4> |
| <pre> |
| Brett Porter wrote: |
| > The active project changes during the reactor build. At the compile |
| > stage, it refers to the target/classes directory. At the package |
| > stage, it points to the jar file. If you are implementing your own |
| > packaging goal, you need to call project.getArtifact().setFile( ... ) |
| > to ensure this is used. |
| |
| - multi module howto |
| - per user scm setup |
| - outline behaviour when connection and developConnection are defined |
| |
| Our current URL looks like: |
| scm:cvs:pserver:@cvs.host.name:/cvsroot:module-version |
| |
| Using this URL, the default is to connect to the CVS server using the |
| same userid as the current user. This is the desired behavior and I |
| don't want to mess that up. I just would like a means to add a userid |
| in the URL only in special circumstances like Continuum. |
| |
| We might want to do something where we say it is a best practice to |
| specify a ${user} and take it from the environment and allow an override. |
| |
| - testing a plugin |
| - How to get started behind an NTLM proxy. |
| - How snapshots works |
| - How do i use the lifecycle provided by a plugin: |
| - How do i disable ibiblio |
| - using version ranges |
| - plugin expressions (look at bob allison's work) |
| - overriding the central repository (use central) |
| - description of what packagings are available and how they work |
| - creating upload bundles |
| - modello example |
| - changing the snapshot policy frequency |
| - overriding central repo |
| - using POM info in applications: the POM is packaged so there is acccess |
| continuum example to get the version. |
| - quick description of scm,wagon,continuum |
| </pre> |
| <h4>Profiles Example</h4> |
| <pre><![CDATA[ |
| it's possible to do it with m2 beta-1 and profiles. |
| |
| you declare profile in your pom like this: |
| |
| <profiles> |
| <profile> |
| <id>env-test</id> |
| <activation> |
| <property> |
| <name>env</name> |
| <value>test</value> |
| </property> |
| </activation> |
| <properties> |
| <appProperties>test.properties</appProperties> |
| </properties> |
| </profile> |
| <profile> |
| <id>env-production</id> |
| <activation> |
| <property> |
| <name>env</name> |
| <value>production</value> |
| </property> |
| </activation> |
| <properties> |
| <appProperties>app.properties</appProperties> |
| </properties> |
| </profile> |
| </profiles> |
| |
| and you can run mvn with one of profiles like: |
| mvn -P env-production clean:clean install ==> we use the profile id |
| or |
| mvn -Denv=test clean:clean install ==> we use the property env define in |
| <activation> |
| |
| Emmanuel |
| |
| martin.kuhn@merkur.at wrote: |
| > Hi, |
| > |
| > I'm a maven newbie and I try out maven 2.0 alpha 3. |
| > |
| > My questions: |
| > |
| > I have a project to build / deploy for three different enviroments (test, |
| > integration, production). |
| > |
| > The difference beetween the bundles is only a properties file (there are |
| > three different files: config-test.properties, |
| > config-integration.properties ...). |
| > In the build process I want to copy the right config file to a file with a |
| > common name (config.properties -> the app should work with this config |
| > file) |
| > |
| > Is there a solution to handle this with maven 2 or do I have to write a |
| > plugin? |
| > |
| ]]> |
| </pre> |
| </section> |
| </body> |
| </document> |
| |
| |