blob: ed5b99a3bdef4a1e80d58e619bc0d9bc50f5efa2 [file] [log] [blame]
<?xml version="1.0"?>
<!--
Copyright 1999-2006 The Apache Software Foundation
Licensed 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.
-->
<!--
// ======================================================================== 78
-->
<document>
<properties>
<title>Acquiring</title>
</properties>
<body>
<a name="Acquiring"/>
<section name="Acquiring Apache Struts products">
<p>
Apache Struts products are made available to the public at no
charge
in both binary and source distributions under the
<a href="http://apache.org/licenses/">Apache Software
License</a>
.
Each subproject offers a production release, as well as a
milestone
releases and "nightly" development builds.
Individual JARs are also made available through
<a href="http://maven.apache.org">Apache Maven</a>
repositories,
like
<a href="http://ibiblio.org">ibiblio</a>
.
</p>
<subsection name="Releases and Milestone Builds">
<a name="ReleasesAndMilestones"/>
<p>
Releases and milestone builds of Struts products are
available from
the main Apache Struts distribution site, or from mirror
sites.
</p>
<ul>
<li>
<strong>General Availability (GA) Releases</strong>
<ul>
<li>
<a href="http://struts.apache.org/download.cgi">
Struts 1.2.8
</a>
</li>
<li>
<a href="http://struts.apache.org/download.cgi">
Struts Scripting 1.0.1
</a>
</li>
</ul>
</li>
<li>
<strong>Older Releases</strong>
are available from the
<ul>
<li>
<a href="http://archive.apache.org/dist/struts/">
Archive Site
</a>
</li>
</ul>
</li>
</ul>
</subsection>
<a name="DevelopmentBuilds"/>
<subsection name="Development Builds">
<p>
The latest
<em>development build</em>
of Struts products are available
<a href="http://svn.apache.org/dist/struts/">here</a>
in binary, source and library distributions.
Library distributions include any external depdencies
needed to use a product with your application.
</p>
<p>
Development builds are being reviewed for quality
by the Apache Struts community.
When a build is judged "ready for prime time",
it is promoted to "General Availability" status and may be
made
the "Best Available" release.
If the community feel that a build requires more testing,
then it may be marked with "Beta" status.
</p>
</subsection>
<a name="NightlyBuilds"/>
<subsection name="Nightly Builds">
<p>
For developers who are helping to create and maintain
Struts products,
or who just want "the latest bits",
the latest development version is made available each
morning.
Use at your own risk!
</p>
<p>
Apache Struts development builds are managed using
<a href="http://maven.apache.org/">Apache Maven</a>
.
Maven acquires the various JARs needed by Struts products
and automaticaly shares JARs between Struts subprojects
and other
Maven projects.
</p>
<ul>
<li>
<a href="http://svn.apache.org/builds/struts/maven/">
Nightly Builds</a>
.
</li>
</ul>
<p>
Be sure to check the Release Notes for a nightly build,
so you have a better idea of what you are getting!
</p>
</subsection>
<a name="SourceCode"/>
<subsection name="Source Code">
<p>
Access to the Apache Struts source repository is available
through
both
<a href="http://svn.apache.org/viewcvs.cgi/struts/action/trunk/?root=Apache-SVN">
web browser</a>
and
<a href="http://subversion.tigris.org/">
Subversion client</a>
interfaces.
</p>
<p>
To download the trunk (HEAD revision) of any Struts
subproject,
a convenience directory has been added, named
<b>current</b>
.
The current directory uses a Subversion feature called
externals
which stores properties on the directory.
With those properties,
Subversion has all the information it needs to
automaticaly download
the head revision of all the Struts subprojects.
</p>
<p>
With the
<a href="http://subversion.tigris.org/">Subversion
client</a>
installed, obtaining a working copy of the Struts codebase
is as simple as
</p>
<code>&gt; svn checkout
http://svn.apache.org/repos/asf/struts/current</code>
<p>
While Externals work well in practice, there are caveats.
For example,
since all the subdirectories are still really different
slices
from the repository,
relative paths might not work the way you expect.
For more, see the
<a href="http://svnbook.red-bean.com/en/1.1/ch07s04.html">
Externals
Definitions</a>
section of the
<a href="http://svnbook.red-bean.com/">Subversion Book</a>
.
</p>
<p>
To check out individual sub-projects from the Subversion
repository,
you can specify one of the following URLs:
</p>
<ul>
<li>
http://svn.apache.org/repos/asf/struts/action/trunk</li>
<li>http://svn.apache.org/repos/asf/struts/apps/trunk</li>
<li>http://svn.apache.org/repos/asf/struts/el/trunk</li>
<li>
http://svn.apache.org/repos/asf/struts/faces/trunk</li>
<li>http://svn.apache.org/repos/asf/struts/flow/trunk</li>
<li>
http://svn.apache.org/repos/asf/struts/sandbox/trunk</li>
<li>
http://svn.apache.org/repos/asf/struts/scripting/trunk</li>
<li>
http://svn.apache.org/repos/asf/struts/shale/trunk</li>
<li>
http://svn.apache.org/repos/asf/struts/taglib/trunk</li>
<li>
http://svn.apache.org/repos/asf/struts/tiles/trunk</li>
</ul>
<p>
(Committers with write access should use the
<strong>https</strong>
protocol instead.
See the ASF
<a href="http://www.apache.org/dev/version-control.html#https-svn">
Source Code Repositories</a>
page for details.)
</p>
<p>
<strong>Warning:</strong>
If you try to check out everything under 'struts',
be aware that you will get not just the most recent code
('trunk'),
but a copy of every tag and branch ever created
for Struts.
A complete checkout of Struts from day one, including all
the branches,
will take some time and might max out your disk volume!
</p>
<p>
For more about using version control systems at Apache,
see the ASF's
<a href="http://www.apache.org/dev/version-control.html#anon-svn">
Source Code Repositories</a>
page.
For more about how Apache Struts uses Subversion, see our
<a href="http://wiki.apache.org/struts/StrutsMaintenanceSvn">
Subversion wiki page</a>
.
</p>
</subsection>
<a name="Building"/>
<subsection name="Building Struts">
<p>
If you are building a Struts subproject from source,
we recommend that you install and use
<a href="http://maven.apache.org">
Apache Maven</a>
1.0.2,
since Maven will acquire whatever external JARs your
system may need.
Of course,
you can still use your build system of choice to build
your own
applications!
</p>
<p>
With Maven installed, building the entire Struts codebase
is as simple as
</p>
<code>/current/build/&gt; maven build-all</code>
<p>
Maven will automatically download any dependencies as
needed.
</p>
<p>
For more about using Maven to build Apache Struts,
see our
<a href="http://wiki.apache.org/struts/StrutsMaintenanceMaven">
Maven wiki page</a>
.
</p>
</subsection>
</section>
<section>
<p class="right">
Next:
<a href="bylaws.html">PMC Bylaws</a>
</p>
</section>
</body>
</document>