I'm trying to compile and run a java project done in IntelliJ from the command line and I'm a bit perplexed on how to do it. This is my project structure:
├───src
│ ├───main
│ │ ├───java
│ │ │ │ Main.java // Main method's in here.
│ │ │ │
│ │ │ ├───objectclasses
│ │ │ │ Application.java
│ │ │ │
│ │ │ └───utils
│ │ │ Defs.java
│ │ │ Api.java
│ │ │ FileIO.java
│ │ │
│ │ └───resources
│ │ applicationIDs.tmp
│ │ applications.csv
│ │
│ └───test
│ └───java
└───target
// .class files compiled by IntelliJ
Going into the command line, navigating to the java
directory, and simply typing:
javac Main.java
doesn't work and returns errors saying that all the packages and symbols referred to in the code can't be found. I've also tried navigating to the root directory and running:
javac -d target -sourcepath src src/main/java/Main.java
which returns similar errors. Finally, I tried the following, which outright said "no source files":
$ javac -d target -sourcepath src -cp .
The error that's being returned:
src\main\java\Main.java:1: error: package objectclasses does not exist
import objectclasses.Application;
^
src\main\java\Main.java:2: error: package utils does not exist
import utils.Defs;
^
src\main\java\Main.java:3: error: package utils does not exist
import utils.Api;
^
src\main\java\Main.java:4: error: package utils does not exist
import utils.FileIO;
^
src\main\java\Main.java:58: error: cannot find symbol
private static void updateApplicationsFile(List<Application> applications)
^
symbol: class Application
location: class Main
src\main\java\Main.java:17: error: cannot find symbol
Api api= new Api(
^
symbol: class Api
location: class Main
src\main\java\Main.java:17: error: cannot find symbol
Api api = new Api(
^
symbol: class Api
location: class Main
src\main\java\Main.java:18: error: cannot find symbol
Defs.API_JSONRPC,
^
symbol: variable Defs
location: class Main
src\main\java\Main.java:19: error: cannot find symbol
Defs.API_ID,
^
symbol: variable Defs
location: class Main
src\main\java\Main.java:20: error: cannot find symbol
Defs.API_KEY,
^
symbol: variable Defs
location: class Main
src\main\java\Main.java:21: error: cannot find symbol
Defs.API_SESSION_ID,
^
symbol: variable Defs
location: class Main
src\main\java\Main.java:22: error: cannot find symbol
Defs.API_DOMAIN);
^
symbol: variable Defs
location: class Main
src\main\java\Main.java:26: error: cannot find symbol
List<Application> applications = api.getApplicationsFromIDList(applicationIDs);
^
symbol: class Application
location: class Main
src\main\java\Main.java:40: error: cannot find symbol
FileIO.writeIDsToFile(applicationIDs);
^
symbol: variable FileIO
location: class Main
src\main\java\Main.java:63: error: cannot find symbol
FileIO.writeApplicationsToFile(applications);
^
symbol: variable FileIO
location: class Main
15 errors
I've never done this sort of thing before so I'm probably missing something obvious. Any help?