cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From conflue...@apache.org
Subject [CONF] Apache CXF > Building
Date Sat, 20 Nov 2010 22:56:00 GMT
<html>
<head>
    <base href="https://cwiki.apache.org/confluence">
            <link rel="stylesheet" href="/confluence/s/1810/9/15/_/styles/combined.css?spaceKey=CXF&amp;forWysiwyg=true"
type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://cwiki.apache.org/confluence/display/CXF/Building">Building</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://cwiki.apache.org/confluence/display/~bimargulies@gmail.com">Benson
Margulies</a>
    </h4>
        <div id="versionComment">
        <b>Comment:</b>
        note cure of mem leak in build.<br />
    </div>
        <br/>
                         <h4>Changes (1)</h4>
                                 
    
<div id="page-diffs">
            <table class="diff" cellpadding="0" cellspacing="0">
            <tr><td class="diff-snipped" >...<br></td></tr>
            <tr><td class="diff-unchanged" > <br>h2. Building CXF <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">
<br>{note:title=&quot;Lots of Build Memory No Longer Needed} <br>The instructions
in this section are not required for the trunk of CXF as of  <br>20 November 2010. (This
hasn&#39;t been verified on Windows.) <br>{note} <br> <br></td></tr>
            <tr><td class="diff-unchanged" >Before building CXF, you need to setup
an environment variable to give Maven more memory: <br>On Unix <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
        </table>
</div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <p>Before you can build CXF, you'll need to first check it out from the <a
href="/confluence/display/CXF/Source+Repository" title="Source Repository">Source Repository</a>.
Then you'll need to install <a href="http://maven.apache.org" class="external-link" rel="nofollow">Maven</a>
2.0.9 or higher.</p>

<h2><a name="Building-BuildingCXF"></a>Building CXF</h2>

<div class='panelMacro'><table class='noteMacro'><colgroup><col width='24'><col></colgroup><tr><td
valign='top'><img src="/confluence/images/icons/emoticons/warning.gif" width="16" height="16"
align="absmiddle" alt="" border="0"></td><td><b>"Lots of Build Memory
No Longer Needed</b><br />The instructions in this section are not required for
the trunk of CXF as of <br/>
20 November 2010. (This hasn't been verified on Windows.)</td></tr></table></div>

<p>Before building CXF, you need to setup an environment variable to give Maven more
memory:<br/>
On Unix</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
export MAVEN_OPTS=<span class="code-quote">"-Xmx512M -XX:MaxPermSize=128M"</span>
</pre>
</div></div>

<p>On Windows</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
set MAVEN_OPTS=-Xmx512M -XX:MaxPermSize=128M
</pre>
</div></div>

<p>On 64 bit Windows, or if you're obtaining out-of-memory or PermGen space errors,
you may need to expand the memory requirements above further, to 768M and 192M.</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
set MAVEN_OPTS=-Xmx768M -XX:MaxPermSize=192M
</pre>
</div></div>

<p>On 64bit Linux and Solaris platforms, or if you're obtaining out-of-memory or PermGen
space errors, you may need to expand the memory requirements above further, to 768M and 192M.
 However, if you are using a recent version of Java6 (update 14 or later) with 64bit vm, you
can use the UseCompressedOops to save memory.   In that case, use:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
export MAVEN_OPTS=<span class="code-quote">"-XX:MaxPermSize=128m -Xmx512M -XX:+UseCompressedOops"</span>
</pre>
</div></div>



<p>To build CXF simply execute (from within the 'trunk' directory):</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
$ mvn install
</pre>
</div></div>
<p>To build CXF without running checkstyle do:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
$ mvn -Pnochecks
</pre>
</div></div>
<p>To build CXF without running checkstyle or the tests do:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
$ mvn -Pfastinstall
</pre>
</div></div>
<p>To build CXF and deploy the sources to your local maven repo do the following. If
you build this way you can start your <a href="http://cxf.apache.org/docs/building-your-cxf-project-with-maven.html"
class="external-link" rel="nofollow">own cxf project from a pom file</a> and import
it with maven eclipse:eclipse then you will have all sources correctly linked into your eclipse
project:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
$ mvn -Pfastinstall source:jar install
</pre>
</div></div>

<p><b>Important:</b> For subsequent builds (e.g., after code changes are
made), run "mvn clean" first to build from scratch, before using one of the mvn install commands
above.  (You may also wish to run "svn update" after running mvn clean but before running
mvn install.)</p>

<h2><a name="Building-Buildingreleasable%2Ftestablekits"></a>Building releasable/testable
kits</h2>
<p>The "distribution" stuff is in the distribution module.   At top level, you can run:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
$ mvn install -Peverything
</pre>
</div></div>
<p>which will cause EVERYTHING to build in one shot, including the distribution modules
that are normally excluded.   As of CXF 2.3.0, it also will build all the samples to make
sure they are fully buildable.   To speed it up, you can use the fastinstall profile with
it:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">
$ mvn install -Peverything,fastinstall
</pre>
</div></div>


<h2><a name="Building-SettingupEclipse"></a>Setting up Eclipse</h2>
<p>See <a href="/confluence/display/CXF/Setting+up+Eclipse" title="Setting up Eclipse">this
page</a> for information on using the Eclipse IDE with the CXF source code.</p>

<h2><a name="Building-SettingupNetBeans"></a>Setting up NetBeans</h2>
<p>See <a href="/confluence/pages/createpage.action?spaceKey=CXF&amp;title=Setting+Up+NetBeans&amp;linkCreation=true&amp;fromPageId=19923"
class="createlink">this page</a> for information on using the NetBeans IDE with the
CXF source code.</p>
    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;">
            <a href="https://cwiki.apache.org/confluence/users/viewnotifications.action"
class="grey">Change Notification Preferences</a>
        </div>
        <a href="https://cwiki.apache.org/confluence/display/CXF/Building">View Online</a>
        |
        <a href="https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=19923&revisedVersion=39&originalVersion=38">View
Changes</a>
                |
        <a href="https://cwiki.apache.org/confluence/display/CXF/Building?showComments=true&amp;showCommentArea=true#addcomment">Add
Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>

Mime
View raw message