64

I know running javac file1.java produces file1.class if file1.java is the only source file, then I can just say java file1 to run it.

However, if I have 2 source files, file1.java and file2.java, then how do I build the program?

Eric Leschinski
  • 146,994
  • 96
  • 417
  • 335
Alfred Zhong
  • 761
  • 2
  • 6
  • 5

5 Answers5

138

Try the following:

javac file1.java file2.java
ryanprayogo
  • 11,587
  • 11
  • 51
  • 66
96

or you can use the following to compile the all java source files in current directory..

javac *.java
ajduke
  • 4,991
  • 7
  • 36
  • 56
7

Here is another example, for compiling a java file in a nested directory.

I was trying to build this from the command line. This is an example from 'gradle', which has dependency 'commons-collection.jar'. For more info, please see 'gradle: java quickstart' example. -- of course, you would use the 'gradle' tools to build it. But i thought to extend this example, for a nested java project, with a dependent jar.

Note: You need the 'gradle binary or source' distribution for this, example code is in: 'samples/java/quickstart'

% mkdir -p temp/classes
% curl --get \
    http://central.maven.org/maven2/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar \
        --output commons-collections-3.2.2.jar

% javac -g -classpath commons-collections-3.2.2.jar \
     -sourcepath src/main/java -d temp/classes \
      src/main/java/org/gradle/Person.java 

% jar cf my_example.jar -C temp/classes org/gradle/Person.class
% jar tvf my_example.jar
   0 Wed Jun 07 14:11:56 CEST 2017 META-INF/
  69 Wed Jun 07 14:11:56 CEST 2017 META-INF/MANIFEST.MF
 519 Wed Jun 07 13:58:06 CEST 2017 org/gradle/Person.class
huch
  • 675
  • 8
  • 13
2

1.use wildcard

2.use options

3.https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javac.html

xt j
  • 37
  • 3
-7

OR you could just use javac file1.java and then also use javac file2.java afterwards.

  • That does not answer the question. OP was asking if there is a way to compile multiple .java files at once. – Ron Zhang Jun 26 '22 at 01:02