Skip to content

Instantly share code, notes, and snippets.

@goldmann
Last active March 4, 2023 12:32
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save goldmann/fdea19f156eff7b15f99 to your computer and use it in GitHub Desktop.
Save goldmann/fdea19f156eff7b15f99 to your computer and use it in GitHub Desktop.
#!/bin/sh
VISUALVM=~/visualvm/bin/visualvm
DIRNAME=`dirname "$0"`
# OS specific support (must be 'true' or 'false').
cygwin=false;
darwin=false;
linux=false;
case "`uname`" in
CYGWIN*)
cygwin=true
VISUAL_VM=jvisualvm
;;
Darwin*)
darwin=true
VISUAL_VM=jvisualvm
;;
Linux)
linux=true
;;
esac
# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
[ -n "$JBOSS_HOME" ] &&
JBOSS_HOME=`cygpath --unix "$JBOSS_HOME"`
fi
# Setup JBOSS_HOME
RESOLVED_JBOSS_HOME=`cd "$DIRNAME/.."; pwd`
if [ "x$JBOSS_HOME" = "x" ]; then
# get the full path (without any relative bits)
JBOSS_HOME=$RESOLVED_JBOSS_HOME
else
SANITIZED_JBOSS_HOME=`cd "$JBOSS_HOME"; pwd`
if [ "$RESOLVED_JBOSS_HOME" != "$SANITIZED_JBOSS_HOME" ]; then
echo "WARNING JBOSS_HOME may be pointing to a different installation - unpredictable results may occur."
echo ""
fi
fi
JBOSS_VERSION=7
if [ -d "$JBOSS_HOME/modules/system" ]; then
JBOSS_VERSION=8
fi
echo "Detected JBoss AS version: $JBOSS_VERSION"
if [ "x$JBOSS_MODULEPATH" = "x" ]; then
if [ "$JBOSS_VERSION" -eq "8" ]; then
JBOSS_MODULEPATH="$JBOSS_HOME/modules/system/layers/base"
else
JBOSS_MODULEPATH="$JBOSS_HOME/modules"
fi
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
JBOSS_HOME=`cygpath --path --windows "$JBOSS_HOME"`
JBOSS_MODULEPATH=`cygpath --path --windows "$JBOSS_MODULEPATH"`
fi
CLASSPATH=""
if [ "$JBOSS_VERSION" -eq "8" ]; then
MODULES="org/jboss/remoting-jmx org/jboss/remoting3 org/jboss/logging org/jboss/xnio org/jboss/xnio/nio org/jboss/sasl org/jboss/marshalling org/jboss/marshalling/river"
else
MODULES="org/jboss/remoting3/remoting-jmx org/jboss/remoting3 org/jboss/logging org/jboss/xnio org/jboss/xnio/nio org/jboss/sasl org/jboss/marshalling org/jboss/marshalling/river"
fi
for MODULE in $MODULES
do
for JAR in `cd "$JBOSS_MODULEPATH/$MODULE/main/" && ls -1 *.jar`
do
CLASSPATH="$CLASSPATH:$JBOSS_MODULEPATH/$MODULE/main/$JAR"
done
done
$VISUALVM -cp:a $CLASSPATH
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment