如何为具有多个文件目录的java创建Makefile

时间:2016-11-09 22:04:27

标签: java class makefile javac

我正在尝试创建一个Makefile来用Java编译项目,我使用NetBeans创建项目,但我需要通过终端创建.jar。

目录结构是这样的:

Project/src/domain
Project/src/domain/controllers
Project/src/domain/controllers/drivers
Project/src/presentation
Project/src/persistence

在所有目录中我都有.java但是我想创建一个Project/bin/clases文件夹来保存.class。
Tha Main课程为Project/src/presentation/Main.java

有人能帮忙找到用Makefile编译这个项目的方法吗?

2 个答案:

答案 0 :(得分:1)

解决方案:抱歉,我忘了告诉解决方案,我只是制作了一个Makefile,添加了具有以下内容的linux指令:

default:
    javac -d EXE src/presentation/*.java src/data/*.java src/domain/controllers/*.java
runMain: default
    java -cp EXE presentation.Main
jar: default
    cd EXE; jar cfe run.jar presentation.Main .;mv run.jar ..

答案 1 :(得分:0)

为此,您可以做的最好的事情是使用一些构建工具,如gradlemaven。我建议gradle,特别是gradle包装。

如果您正在使用netbeans,请参阅here 要了解gradle wrapper,请转到here

主gradle文件是build.gradle和" hello world"看起来像这样:

group 'your.company'
version '1.0-SNAPSHOT'

apply plugin: 'java'

repositories {
   mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.11'
}