50 lines
890 B
Bash
50 lines
890 B
Bash
# Name: Java Project Enviornment Creator
|
|
# Description: Creates a java project structure with a Makefile and a Main.java
|
|
# Author: bacalhau
|
|
|
|
echo "### Java Project Enviornment Creator ###
|
|
|
|
choose a project name: "
|
|
|
|
|
|
### Obviosly reads the project name
|
|
read PROJECT_NAME
|
|
|
|
|
|
### Makes all the files
|
|
mkdir -p bin/$PROJECT_NAME
|
|
mkdir -p src/$PROJECT_NAME
|
|
touch Makefile
|
|
touch src/$PROJECT_NAME/Main.java
|
|
|
|
|
|
### Writes the Makefile
|
|
echo "JAVAC=javac
|
|
JAVA=java
|
|
SRC=src/$PROJECT_NAME/*.java
|
|
BIN=bin
|
|
JAR_FILE=$PROJECT_NAME.jar
|
|
|
|
compile:
|
|
\t\$(JAVAC) -d \$(BIN) \$(SRC)
|
|
|
|
run: compile
|
|
\t\$(JAVA) -cp \$(BIN) $PROJECT_NAME.Main
|
|
|
|
clean:
|
|
\trm -rf \$(BIN) \$(JAR_FILE)" > Makefile
|
|
|
|
|
|
### Writes the Main.java file
|
|
echo "package $PROJECT_NAME;
|
|
|
|
public class Main {
|
|
public static void main(String[] args) {
|
|
// Write code here
|
|
}
|
|
}" > src/$PROJECT_NAME/Main.java
|
|
|
|
|
|
### Lists the project structure
|
|
tree
|