blob: 758634be96e4856ff47cdb2c18eca060544edcc4 [file] [log] [blame]
~~ 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.
------
Maven 2 NB Repository Plugin
------
Milos Kleint
<mkleint@codehaus.org>
------
2012-10-19
HOWTO: Upload NetBeans release binaries to a Maven repository
There is a goal that converts the NetBeans module information into Maven metadata
and is capable of uploading the module jar file, javadoc, sources and nbm files to local
and remote repositories. See {{{./populate-mojo.html}<<<populate>>> goal}} description.
For a binary-only upload (jar files and nbm files only), it's possible to download the bits from official sites. See below for URLs.
For the complete upload, you will need to checkout the sources of the IDE/Platform you
want to upload. See this FAQ entry on {{{http://wiki.netbeans.org/DevFaqAccessSourcesUsingMercurial}HowTo checkout sources from Hg}}
To have external dependencies correctly identified by their real GAV, you will need to download the index from central (or other) repository.
See {{{./download-mojo.html}<<<download>>> goal}}
The goal has multiple input parameters that link the goal to binaries prepared beforehand.
* <<netbeansInstallDirectory>> designates the base directory where resides the NetBeans installation
that shall be uploaded. It can be either {{{http://www.netbeans.org/downloads/index.html}downloaded as zip}} or built from sources.
Run <<<ant>>> in your local hg clone to build the distribution at <<<nbbuild/netbeans>>> sundirectory.
* <<netbeansNbmDirectory>> designates the base directory where the nbm files are located.
Run <<<ant build-nbms>>> in your local <<<hg clone>>> to build the nbms at <<<nbbuild/nbms>>> directory or download it from the
{{{http://updates.netbeans.org/netbeans}http://updates.netbeans.org/netbeans}} space eg.
final <<6.5>> version at {{{http://updates.netbeans.org/netbeans/6.5/final/uc/}http://updates.netbeans.org/netbeans/<<6.5>>/final/uc/}}.
Use a tool like <<<wget>>> to download the complete directory tree to a directory designated by the <<netbeansNbmDirectory>> parameter.
* <<netbeansSourcesDirectory>> designates the base directory containing zip files with module jar sources.
Run <<<ant build-source-zips>>> in your local hg clone to build the nbms at <<<nbbuild/build/source-zips>>> directory.
* <<netbeansJavadocDirectory>> designates the base directory containing zip files with javadoc zips for modules with public apis.
Run <<<ant build-javadoc>>> in your local hg clone to build the nbms at <<<nbbuild/build/javadoc>>> directory.