Difference between revisions of "How to build Freeplane"

From Freeplane - free mind mapping and knowledge management software
(Build options)
 
(26 intermediate revisions by 9 users not shown)
Line 1: Line 1:
To build Freeplane, you must:
+
[[Category:Coding]]
  
# Get the source code in one of the following ways:
+
== Requirements ==
#*   Download the freeplane_src archive from http://sourceforge.net/projects/freeplane/files/ ('''NOT''' the freeplane_srcpure archive -- this does not contain the external libraries required for the build.)
+
* You need java 11 or later and gradle >= 6.0
#*  Check out the latest source code from the bzr repository (for bzr repository URLs, see below).  Do one of the following, depending on whether you prefer a small checkout-directory size, or a repository having full history:
 
#**    <code>bzr checkout --lightweight URL freeplane</code>  [no history, directory size ~ 30MB] '''OR'''
 
#**    <code>bzr clone URL freeplane</code>  [full history, directory size ~ 150MB]
 
#*  Update to the latest source code in the bzr repository. From within the freeplane bzr directory:
 
#**    <code>bzr update</code>
 
# Build the source code, by typing the following commands:
 
#*  <code>cd freeplane/freeplane_framework/ant</code>
 
#*  <code>ant build</code>  [see ant section below for more details]
 
  
After the code finishes building, it can be found inside the <code>freeplane/freeplane_framework/build</code> directory.
+
== Download gradle ==
 +
* Download gradle: https://gradle.org/releases/
 +
* Unzip to your home directory
  
Possible bzr URLs to use include:
+
== Clone the freeplane repository ==
* bzr://freeplane.bzr.sourceforge.net/bzrroot/freeplane/freeplane_program/release_branches/1_0_x
+
git clone https://github.com/freeplane/freeplane.git
* ... (TODO: others?)
+
cd freeplane
  
Further information on the Bazaar repository used by Freeplane is available on the [[Bazaar howto]] wiki page.
+
== Run gradle ==
 +
* Gradle wrapper files are intentionally not committed to the sources but git ignored so that you can add them yourself if you need them.
 +
$ ~/Downloads/gradle-6.0.1/bin/gradle build
  
 +
== Run freeplane ==
 +
cd BIN
 +
./freeplane.sh # linux
 +
freeplane.bat
 +
 +
== Create package ==
 +
~/git2/freeplane(1.7.x u=)$ ~/Downloads/gradle-6.0.1/bin/gradle clean build dist
 +
ls DIST
  
== Using ant ==
+
== Configuring an IDE ==
Building Freeplane requires that you have [http://ant.apache.org/ ant] installed on your computer.  From the ant directory you can run <code>ant TARGET</code> where <code>TARGET</code> is one of the following:
+
* See [[IDE setup| how to set up IDE]]
* build (create directory with binaries in freeplane/freeplane_framework/build)
 
* binzip (create binary zipfile in freeplane/freeplane_framework/dist)
 
* srczip (create source zipfile in freeplane/freeplane_framework/dist)
 
* installer (create windows installer in freeplane/freeplane_framework/dist)
 
* portableinstaller (create portable-windows installer in freeplane/freeplane_framework/dist)
 
* dmg4mac (create OS X DMG file in freeplane/freeplane_framework/dist)
 
 
 
Specifying no target will end up building all of the above targets.
 
 
 
If you wish to specify a destination build directory, you can do so by adding the <code>build</code> property as a commandline argument to ant:
 
* <code>ant -Dbuild=<destination directory> build</code> .
 
 
 
=== Ant options for building freeplane for upload on Source Forge servers ===
 
Please consider following settings
 
 
 
'''For building test versions:'''
 
ant -Dminor=XX
 
*-Dminor=XX adds the testversion number to the file names for creating the test version
 
 
 
'''For building stable versions:'''
 
ant-Dskip_bugreport=true
 
*-Dskip_bugreport=true excludes plugin bugreport from build.
 
'''Use option -Dskip_bugreport=true to exclude the bugreport plugin compiling the stable versions''' (not the testversions, alpha, beta and rc but only the final stable versions like the coming Freeplane 1.1.0).
 
*Similar -Dskip_PLUGIN options are available for skipping the other plugins like -Dskip_script=true but they are usually not needed
 

Latest revision as of 09:16, 28 June 2020


Requirements

  • You need java 11 or later and gradle >= 6.0

Download gradle

Clone the freeplane repository

git clone https://github.com/freeplane/freeplane.git
cd freeplane

Run gradle

  • Gradle wrapper files are intentionally not committed to the sources but git ignored so that you can add them yourself if you need them.

$ ~/Downloads/gradle-6.0.1/bin/gradle build

Run freeplane

cd BIN
./freeplane.sh # linux
freeplane.bat

Create package

~/git2/freeplane(1.7.x u=)$ ~/Downloads/gradle-6.0.1/bin/gradle clean build dist
ls DIST

Configuring an IDE