cayenne-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From conflue...@apache.org
Subject [CONF] Apache Cayenne Website > Building Cayenne
Date Sat, 10 Jul 2010 08:56:00 GMT
<html>
<head>
    <base href="https://cwiki.apache.org/confluence">
            <link rel="stylesheet" href="/confluence/s/1810/9/1/_/styles/combined.css?spaceKey=CAYSITE&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/CAYSITE/Building+Cayenne">Building
Cayenne</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://cwiki.apache.org/confluence/display/~andrus">Andrus
Adamchik</a>
    </h4>
        <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>{note}Note that building
this from parent directory (&quot;cayenne/docs&quot;) will result in the docs placed
in the wrong location. We need to fix it in the POM.{note} <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">
<br>Since Confluence installation at Apache switched to using HTTPS access, we&#39;ve
seen Java errors if a user has a custom keystore under ~/.keystore. If the build fails with
errors similar to {{&quot;PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target&quot;}}, you must explicitly
specify a JVM shared keystore: <br> <br>{noformat}mvn -P wiki-docs clean install
-Dconfluence.userName=username -Dconfluence.password=password \ <br>  -Djavax.net.ssl.trustStore=&lt;JAVA_HOME&gt;/lib/security/cacerts{noformat}
<br></td></tr>
        </table>
</div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h2><a name="BuildingCayenne-BuildingCayenne"></a>Building Cayenne</h2>

<h3><a name="BuildingCayenne-Prepare"></a>Prepare</h3>

<div class='panelMacro'><table class='infoMacro'><colgroup><col width='24'><col></colgroup><tr><td
valign='top'><img src="/confluence/images/icons/emoticons/information.gif" width="16"
height="16" align="absmiddle" alt="" border="0"></td><td><b>Useful Information</b><br
/>The suggested version of Maven is 2.2.1.  Older versions may not build Cayenne.</td></tr></table></div>


<ul>
	<li><a href="http://maven.apache.org/" class="external-link" rel="nofollow">Download
Maven2</a>.</li>
	<li>Check out the repository trunk (or another appropriate branch). eg:</li>
</ul>


<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>svn co https://svn.apache.org/repos/asf/cayenne/main/trunk/ cayenne</pre>
</div></div>

<h3><a name="BuildingCayenne-BuildAllModules"></a>Build All Modules</h3>

<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>cd cayenne &amp;&amp; mvn install</pre>
</div></div>

<h4><a name="BuildingCayenne-FirstTimeBootstrap"></a>First Time Bootstrap</h4>

<p>When building for the first time (with clean local repo), you must bootstrap the
repository by executing the command above. On subsequent runs, you can use other maven commands
like "clean", and/or build modules one by one.</p>

<h4><a name="BuildingCayenne-Skippingintegrationtests"></a>Skipping integration
tests</h4>

<p>In order to skip the tests (to speed up the build process or because some tests are
failing):</p>

<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>mvn -Dmaven.test.skip=true install</pre>
</div></div>

<h4><a name="BuildingCayenne-WindowsWoes"></a>Windows Woes</h4>
<p>Full tree build may fail on Windows if the Maven2 repository directory contains spaces,
which it does by default ("C:\Documents and Settings\user\.m2"). This is a <a href="http://jira.codehaus.org/browse/MSUREFIRE-139"
class="external-link" rel="nofollow">bug in Maven</a>. Until it is fixed, the workaround
is to relocate a repository to a directory with no spaces, e.g. "C:\.m2". This can be done
by entering the new location in the <tt>settings.xml</tt> itself located in the
default directory:</p>

<div class="code panel" style="border-width: 1px;"><div class="codeHeader panelHeader"
style="border-bottom-width: 1px;"><b>C:\Documents and Settings\user\.m2\settings.xml</b></div><div
class="codeContent panelContent">
<pre class="code-java">&lt;settings&gt;
   &lt;localRepository&gt;c:\.m2&lt;/localRepository&gt;
&lt;/settings&gt;</pre>
</div></div>

<p>It has also been reported that there are issues with Subversion on Windows with long
paths:</p>

<div class="code panel" style="border-width: 1px;"><div class="codeHeader panelHeader"
style="border-bottom-width: 1px;"><b>Long Path Problems in Subversion on Windows</b></div><div
class="codeContent panelContent">
<pre class="code-java">
C:\  [succeeded]
C:\Documents and Settings [succeeded]
C:\Documents and Settings\borutb\Desktop [failed]
</pre>
</div></div>

<h3><a name="BuildingCayenne-BuildAssemblies"></a>Build Assemblies</h3>

<p>A generic assembly is built like this:</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>cd cayenne/assembly &amp;&amp; mvn clean package</pre>
</div></div>

<p>A Windows assembly is built like this:</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>cd cayenne/assembly &amp;&amp; mvn -P windows clean package</pre>
</div></div>

<p>A Mac assembly is built with a shell script as Maven does not have a plugin to create
a .dmg:</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>cd cayenne/assembly &amp;&amp; ./build-mac.sh</pre>
</div></div>

<h3><a name="BuildingCayenne-RefreshDocumentationfromWiki"></a>Refresh Documentation
from Wiki</h3>

<p>To rebuild the docs from Confluence Wiki, a build must be done with "wiki-docs" profile
activated:</p>

<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre># cd cayenne/docs/doc
# mvn -P wiki-docs clean install -Dconfluence.userName=username -Dconfluence.password=password
# svn ci -m "docs updated"</pre>
</div></div>

<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>Note that building this from parent
directory ("cayenne/docs") will result in the docs placed in the wrong location. We need to
fix it in the POM.</td></tr></table></div>

<p>Since Confluence installation at Apache switched to using HTTPS access, we've seen
Java errors if a user has a custom keystore under ~/.keystore. If the build fails with errors
similar to <tt>"PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target"</tt>, you must explicitly
specify a JVM shared keystore:</p>

<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent
panelContent">
<pre>mvn -P wiki-docs clean install -Dconfluence.userName=username -Dconfluence.password=password
\
  -Djavax.net.ssl.trustStore=&lt;JAVA_HOME&gt;/lib/security/cacerts</pre>
</div></div>
    </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/CAYSITE/Building+Cayenne">View
Online</a>
        |
        <a href="https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=9731&revisedVersion=30&originalVersion=29">View
Changes</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>

Mime
View raw message