Skip to content

Commit

Permalink
Merge pull request #102 from MesquiteProject/development
Browse files Browse the repository at this point in the history
Development
  • Loading branch information
wmaddisn authored Aug 22, 2021
2 parents 0017f08 + 71255c7 commit d5d352e
Show file tree
Hide file tree
Showing 411 changed files with 10,690 additions and 581 deletions.
13 changes: 6 additions & 7 deletions .classpath
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,22 @@
<classpathentry exported="true" kind="lib" path="jars/MRJToolkitStubs.zip"/>
<classpathentry exported="true" kind="lib" path="jars/pal.zip"/>
<classpathentry exported="true" kind="lib" path="jars/commons-httpclient-3.1.jar"/>
<classpathentry exported="true" kind="lib" path="jars/commons-lang-2.3.jar"/>
<classpathentry excluding="docs/mesquite/BeanTree/" kind="src" path="Resources"/>
<classpathentry kind="src" path="Source"/>
<classpathentry exported="true" kind="lib" path="jars/commons-codec-1.6.jar"/>
<classpathentry exported="true" kind="lib" path="jars/gson-2.6.2.jar"/>
<classpathentry exported="true" kind="lib" path="jars/httpclient-4.3.6.jar"/>
<classpathentry exported="true" kind="lib" path="jars/commons-io-2.5.jar"/>
<classpathentry exported="true" kind="lib" path="jars/commons-lang3-3.5.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry exported="true" kind="lib" path="jars/commons-logging-1.1.3.jar"/>
<classpathentry exported="true" kind="lib" path="jars/commons-math3-3.6.1.jar"/>
<classpathentry kind="lib" path="jars/byte-buddy-agent-1.7.8.jar"/>
<classpathentry exported="true" kind="lib" path="jars/dom4j-2.0.2.jar"/>
<classpathentry exported="true" kind="lib" path="jars/jsch-0.1.54.jar"/>
<classpathentry kind="lib" path="jars/commons-logging-1.2.jar"/>
<classpathentry kind="lib" path="jars/commons-codec-1.11.jar"/>
<classpathentry exported="true" kind="lib" path="jars/httpclient-4.5.13.jar"/>
<classpathentry exported="true" kind="lib" path="jars/commons-io-2.11.0.jar"/>
<classpathentry exported="true" kind="lib" path="jars/commons-lang3-3.12.0.jar"/>
<classpathentry exported="true" kind="lib" path="jars/dom4j-2.1.3.jar"/>
<classpathentry kind="output" path="Mesquite_Folder"/>
</classpath>
8 changes: 5 additions & 3 deletions .settings/org.eclipse.jdt.core.prefs
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.6
org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=disabled
org.eclipse.jdt.core.compiler.source=1.6
org.eclipse.jdt.core.compiler.source=1.8
Binary file removed Additional Files/Mesquite.exe
Binary file not shown.
4 changes: 0 additions & 4 deletions Additional Files/Mesquite_Start_Script java 1.7.command

This file was deleted.

4 changes: 0 additions & 4 deletions Additional Files/Mesquite_Start_Script java 1.8.command

This file was deleted.

1 change: 0 additions & 1 deletion Additional Files/classpaths.txt

This file was deleted.

Binary file not shown.
Binary file removed Additional Files/executables.zip
Binary file not shown.
3 changes: 0 additions & 3 deletions Additional Files/jarFileMaking.txt

This file was deleted.

Binary file removed Additional Files/jars.zip
Binary file not shown.
2 changes: 0 additions & 2 deletions Additional Files/menuSquares.txt

This file was deleted.

54 changes: 0 additions & 54 deletions Additional Files/preparingMesquite.html

This file was deleted.

18 changes: 0 additions & 18 deletions Additional Files/receipts.xml

This file was deleted.

Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
java --add-opens java.base/java.net=ALL-UNNAMED -Xmx1000M -Xss4m -Djava.library.path=lib -Djri.ignore.ule="yes" -jar Mesquite.jar
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
To Run Mesquite on Linux

SYSTEM REQUIREMENTS
To run Mesquite, you need Java installed. The version of Mesquite you have here runs on Java 1.8 or higher. If Mesquite doesn't work, you may need to try different versions of Java. Occasionally a new version of Java is released that has bugs, or adds a requirement that is not backwards-compatible, and Mesquite will be unable to run.

There is a bug in Oracle Java versions 11 to 16 (at least) on Linux that causes Mesquite to crash during startup with a StackOverflowError. The only workaround we know is to use Mesquite on Linux only with Java version 8 (i.e. 1.8) which is available from java.com. You may need to make adjustments so that your system knows to use Java 8 (e.g., see instructions here http://www.ormbunkar.se/aliview/#java8install, or see below).

RUNNING MESQUITE
Run Mesquite by double clicking mesquite.sh or running mesquite.sh from the command line like this:
./mesquite.sh

You may want to edit this to request more memory using options like "-Xmx1000M -Xss4m" (see below).

Alternatively, run it from the command line by cd'ing into Mesquite_Folder and then giving a command like this:

java -Xmx1000M -Xss4m -Djava.library.path=lib -Djri.ignore.ule="yes" -jar Mesquite.jar

The part -Xmx1000M indicates how much heap memory to give to Mesquite in general. With more heap memory Mesquite can handle more trees, bigger matrices, bigger charts, and so on.

The part -Xss4m indicates how much stack memory to give to each thread. With more stack memory, Mesquite can handle bigger trees, e.g. more than 5000 taxa. To be able to handle 10000 taxa, you may need to increase this to 4m

Here is an example configuration:

java -Xmx4000M -Xss16m -d64 -Djava.library.path=lib -Djri.ignore.ule="yes" -jar Mesquite.jar

This gives much memory to Mesquite, but 4000 MB (= 4 GB) memory exceeds the ability of 32 bit Java. For that reason the command -d64 was added, to indicate you want to use 64 bit java.

If you run Mesquite directly from the command line, you can replace �java� by the full path to the Java 1.8 jre or jdk. That will allow you to have multiple versions of Java on your computer, have Java 16 or some other newer version as the default, but still run Mesquite on Java 1.8.


Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
#!/bin/bash

#Script to identify java VM. Also modifies classpath on cygwin.
#Written by Travis Wheeler (www.traviswheeler.com)

#If you find bugs or modify the script to improve functionality,
# please let us know so we can improve the script for everyone


# Thanks to William Cook (http://www.cs.utexas.edu/users/wcook/) for the bit that
# identifies the path containing this script, and uses it to set the classpath.
# (the exact site of the work that served as inspiration for this code is lost to antiquity)

#Note from W. Maddison: to increase memory allocation adjust the following lines:
# java -Djava.library.path=lib -cp "$dir" mesquite.Mesquite $*
# by adding the extra arguments -Xmx and -Xss
# For instance,
# java -Djava.library.path=lib -Xmx500M -Xss4m -cp "$dir" mesquite.Mesquite $*
# will allocate 500M for the heap, which helps with large data and calculations,
# and 4M stack size per thread, which helps with large trees (> 5000 taxa).

#figure out where java lives
if [ $MESQUITE_JAVA_HOME ]
then
java="$MESQUITE_JAVA_HOME/bin/java"
elif [ $JAVA_HOME ]
then
java="$JAVA_HOME/bin/java"
else
tmp=`java -version 2>&1`
if echo "$tmp" | grep -q "command not found" # no "java", so try "jre"
then
tmp=`jre -version 2>&1`
if echo "$tmp" | grep -q "command not found"
then
echo "Can't find java. Try setting either the JAVA_HOME environment variable"
exit
else
java="jre"
fi
else
java="java"
fi
fi


# figure out where I live, then run java w/ my containing dir as classpath
dir=`dirname "$0"`
os=`uname`
if test ${os:0:6} = "CYGWIN"
then
if test ${dir:1:8} = "cygdrive"
then
dir="${dir:10:1}:/${dir:12}"
fi
chmod -R u+w "$dir/com/"
cp -r "$dir/../Resources/com/"* "$dir/com/" >& /dev/null
$java -Djava.library.path=lib -Djri.ignore.ule="yes" -jar Mesquite.jar $*
else
chmod -R u+w "$dir/com/"
cp -r "$dir/../Resources/com/"* "$dir/com/" >& /dev/null
$java -Djava.library.path=lib -Djri.ignore.ule="yes" -jar Mesquite.jar $*
fi

Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
dir=`dirname "$0"`
java -Xmx2000M -Xss8m -Djava.library.path=lib -Djri.ignore.ule="yes" -jar "$dir/Mesquite.jar"

#================
#INSTRUCTIONS
#Increase the numbers above to enable more than 2000M total heap and 8M per thread for the stack. The latter enables larger trees, e.g. more than 5000 taxa

#IF MESQUITE DOESN'T START, TRY THESE:

#The default command in this file as it is original distributed is as follows (but without the "#"):
#java -Xmx2000M -Xss8m -Djava.library.path=lib -Djri.ignore.ule="yes" -jar "$dir/Mesquite.jar"

#That uses the default version of Java to run Mesquite. If you need to use another Java, put its full path instead of the word java. For instance, to run Java 1.8 on some macOS versions, use a command like this (but without the "#").

#/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java -Xmx2000M -Xss8m -Djava.library.path=lib -Djri.ignore.ule="yes" -jar "$dir/Mesquite.jar"

#On the other hand, if you use a new version of java, you may need to add an "add-export" flag as follows:

#java --add-exports java.desktop/com.apple.eawt=ALL-UNNAMED -Xmx2000M -Xss8m -Djava.library.path=lib -Djri.ignore.ule="yes" -jar "$dir/Mesquite.jar"

Binary file not shown.
Binary file not shown.
Loading

0 comments on commit d5d352e

Please sign in to comment.