Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Compiling four java files within one package using javac

I have four java files in my folder. They are all in the same package. Here's the package declaration
package com.osama.GHide

All of these classes are in the same package. I want to know how can I compile them using javac (i mean i do not know how to compile multiple files that are using each other). And once that is done how do I launch then using java command in the CLI? here are the file names.
EnteringPoint.java HidingProcess.java ListFiles.java

like image 809
prometheuspk Avatar asked Nov 06 '11 14:11

prometheuspk


People also ask

How do I compile all java files in a package?

Open a command prompt and navigate to the compile-packages-in-java directory. Then type in the command to compile the Person source and hit Enter . Notice that you provided the path of the Java file. This path corresponds to the package name.

How do I compile all java files at once?

4. Using Argument Files. When there are multiple packages to compile, then using the javac command with an argument file comes in handy. An argument file can include both the javac options and source file names.


2 Answers

From the project's root directory:

javac src/com/osama/GHide/*.java 

To run, assuming no other dependencies:

java -cp ./src com.osama.GHide.EnteringPoint 

(Assuming EnteringPoint has the normal main function.)

The javac command compiles all the .java files in the package's directory. Since they're all in the same package/directory, this works. It also puts the generated .class files in the same directory, which may or may not be what you want.

To put them in a different directory, use the -d option and supply a path.

javac -d bin src/com/osama/GHide/*.java 

Then to run:

java -cp ./bin com.osama.GHide.EnteringPoint 
like image 100
Dave Newton Avatar answered Sep 24 '22 02:09

Dave Newton


You can run by using command :- javac -cp src/com/**/*.java I am asuming there is no other dependenices and your root class name would be src only.

like image 28
Parmatma Avatar answered Sep 22 '22 02:09

Parmatma