JAL-2679 update query id to actual case of retrieved gene
[jalview.git] / doc / building.html
index 455251f..ecde4d8 100755 (executable)
@@ -1,20 +1,21 @@
 <html>
 <!--
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.5)
- * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * Jalview is free software: you can redistribute it and/or
  * modify it under the terms of the GNU General Public License 
  * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
- * 
+ *  
  * Jalview is distributed in the hope that it will be useful, but 
  * WITHOUT ANY WARRANTY; without even the implied warranty 
  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
 -->
 <head>
 <title>Building Jalview from Source</title>
 <p>
 You will need the following (hopefully):<br>
 <ul>
-<li>Java development kit (we used JDK1.4SE but JDK1.5 will work too,
-and maybe even jikes).
-<li>Ant (we think 1.5.4 is quite sufficient to use the simple build
-file supplied).
+<li>Java development kit (JDK1.8 is now the recommended platform for developing with Jalview.</li>
+<li>Ant (1.7 or later will be needed for some of the jarsigning tools).</li>
 </ul>
 With any luck, after setting your paths and JAVA_HOME correctly, you
 just need to change to the Jalview directory and run ant (this works
-from JBuilder and eclipse too).
+from eclipse too, but NetBeans is a bit trickier).
 <pre>
    ant
 </pre>
@@ -46,25 +45,53 @@ build target in ant to make the signed jar files in a directory called
 dist. But first you need to make your own key:
 <p><strong>Making your own key</strong></p>
 
-<p>The ant 'makefulldist' target assumes that a keystore exists in a
-directory 'keys'. To make a key accessible using the default settings
-in the build.xml file then make the keys directory and add the
-jarsigner key with the following :
-</p>
-<pre>
-mkdir keys
-keytool -genkey -keystore keys/.keystore -keypass alignmentisfun
--storepass alignmentisfun -alias jalview
- (you will have to answer some personal questions here)
-ant makedist
- (should eventually generate a Jalview.jnlp file
-  in ./dist along with a set of signed jars using the jalview
-  key)
-</pre>
-
-<p>
-
-<p>
+  <p>The ant 'makefulldist' target assumes that a keystore exists in
+    a directory 'keys'. To make a key accessible using the default
+    settings in the build.xml file then make the keys directory and add
+    the jarsigner key with the following :</p>
+  <pre>mkdir keys</pre>
+  <pre>keytool -genkey -keystore keys/.keystore -keypass alignmentisfun
+  -storepass alignmentisfun -sigalg SHA1withRSA -keyalg RSA -alias jalview</pre>
+  <em>(you will have to answer some personal questions here)</em>
+  <pre>ant makedist -DWebStartLocation="file://.pathtojalviewsource./dist" -Dapplication.codebase="*"</pre>
+  <p>This should eventually generate a jalview.jnlp file in ./dist
+    along with a set of signed jars using the jalview key). In order to
+    test locally via webstart you'll now need to add 'file:/' to your
+    java webstart security exception list. Then:</p>
+  <pre>javaws file://.pathtojalviewsource./dist/jalview.jnlp</pre>
+  <p>Please remember to remove that entry afterwards, since it will leave
+  your system vulnerable to malicious code.
+  </p>
+  <p>
+               <strong>Building the JalviewLite applet<br>
+               </strong> The JalviewLite applet is compiled using a subset of the packages in
+               the src directory (specifically: MCView, and jalview.{datamodel,
+               analysis, appletgui, utils, schemes, api, structure}, and
+               com.stevesoft.*). Once compiled, these class files are obfuscated to
+               make the code run efficiently. To compile the applet Jar, use the
+               makeApplet task - optionally passing in a 'donotobfuscate' property to
+               the ant build (e.g. -Ddonotobfuscate=true) to disable obfuscation. </p><p>
+               The ant target 'pubapplet' can be used to compile install the
+               jalviewApplet.jar and any dependent jars (under appletlib) into a copy
+               of the examples directory created under the <em>outputDir</em> build
+               property (which defaults to the 'dist' directory).
+       </p>
+       <p>
+<h1>using IDEs to build Jalview</h1>
+       <p>The Jalview source distribution includes project definitions for
+               Eclipse, Netbeans and some rather ancient Borland JBuilder .jpx
+               project files. These files should be sufficient to set up basic source
+               folders and build paths, but you will need to ensure that all .jar
+               files in the lib and appletlib directories are added to the build path
+               for your IDE project, and that the 'buildindices' target in Jalview's
+               build.xml is executed with the 'outputDir' ant property set to the
+               directory where the IDE expects to place compiled classes ('classes'
+               directory for eclipse, 'build/classes' for netbeans).</p>
+       <p>Note: It is generally not recommended that you distribute build
+               artefacts that were generated automatically via an IDE's own packaging
+               mechanism (e.g. Netbeans' executable Jar and dependent lib directory).
+               The hand-crafted ant build.xml is (currently) the only officially
+               supported method of building distributable versions of Jalview.</p>
 <address>
 <a href="mailto:help@jalview.org">Jalview development team</a>
 </address>