Reputation: 53
I am new to Cygwin. What are the normal steps that are followed when setting Java classpath and all for running programs in Cygwin?
Upvotes: 4
Views: 4361
Reputation: 101
1) Install JDK and check the installation path
Java binaries may be under "Program Files" or "Program Files (x86)": those white spaces will likely affect the behaviour.
2) Preliminary info
In order to set up env variables correctly, I suggest gathering some info before starting: - Open DOS shell (type cmd into 'RUN' box) - go to C: - type "dir /x" and take note of DOS names (with ~) for "Program Files *" folders
3) Cygwin configuration:
export JAVA_HOME="/cygdrive/c/PROGRA~1/Java/jdk1.8.0_65" export PATH="$JAVA_HOME/bin:$PATH"
Now from Cygwin launch
javac -version
to check if the configuration is successful.
Upvotes: 0
Reputation: 202
I found it easier just to type cmd in cygwin . This allows you to run dos like commands in cygwin . you should be able to start tomcat using the startup.bat file from the terminal
Upvotes: 0
Reputation: 29872
I'd suggest taking a look at catalina.sh. This shell script launches java under both unix and cygwin environments. Currently, OpenJDK is not part of the Cygwin installer, and people running Java use a Sun build MS executable. This means the paths must be converted to Windows, and when Java is running it will be the same as if it were launched from a batch file.
Specifcally, catalina.sh changes these paths using the cygpath
program:
case "`uname`" in
CYGWIN*) cygwin=true;;
esac
if $cygwin; then
JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"`
JRE_HOME=`cygpath --absolute --windows "$JRE_HOME"`
CATALINA_HOME=`cygpath --absolute --windows "$CATALINA_HOME"`
CATALINA_BASE=`cygpath --absolute --windows "$CATALINA_BASE"`
CATALINA_TMPDIR=`cygpath --absolute --windows "$CATALINA_TMPDIR"`
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
[ -n "$JSSE_HOME" ] && JSSE_HOME=`cygpath --absolute --windows "$JSSE_HOME"`
JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"`
fi
Upvotes: 5
Reputation: 2843
If I'm not mistaken, Cygwin inherits the Classpath settings from the "normal" windows settings, so if you setup your Classpath within the system properties both Windows and Cygwin should be able to use it.
Upvotes: 1
Reputation: 24340
It sounds like you need to convert between Windows and Unix-style paths (your Java probably wants Windows paths, your Cygwin talks UNIX). Here is a guide to convert between Unix and Windows paths in Cygwin, using the cygpath
util.
Upvotes: 0