Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
182 views
in Technique[技术] by (71.8m points)

Java command line with external .jar

I develop a project using .jar to reuse code.

So I have on .jar named TOOLS.jar, and I develop a simple application in file HelloWorld.java which refer my package TOOLS from TOOLS.jar

I compile with this command line:

javac -g -d C:MyApp -cp TOOLS.jar HelloWorld.java

It's successful, and when I want to execute my application I use this command (I'm in C:MyApp folder):

java -cp <path>TOOLS.jar;. HelloWorld

It's successful, but my question is:

How do I execute my application when I have multiples external .jar files?

Do I have to add each one in command with -cp option?

Is there a way to generate only one binary file and execute it (as .exe with C programs)?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Concatenate each jar file argument to cp with:

; on Windows
: on Linux or Mac

e.g.

java -cp <path>TOOLS.jar;.;<path>jar2.jar;<path>jar3.jar HelloWorld

on newer JVMs (6+, I think) you can also use the * to append all JARs in a directory e.g.

java -cp .;<path>*; HelloWorld

To go a step further and create a single packaged executable see this question.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...