Ajout de la structure de base du projet Bake avec les fichiers principaux.
Première ébauche du projet
This commit is contained in:
25
src/fr/monlouyan/bakefile/CommandExecutor.java
Normal file
25
src/fr/monlouyan/bakefile/CommandExecutor.java
Normal file
@@ -0,0 +1,25 @@
|
||||
package fr.monlouyan.bakefile;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class CommandExecutor {
|
||||
private boolean debug;
|
||||
|
||||
public CommandExecutor(boolean debug) {
|
||||
this.debug = debug;
|
||||
}
|
||||
|
||||
public void execute(Target target) {
|
||||
if (!target.needsUpdate()) return;
|
||||
try {
|
||||
System.out.println("Executing: " + target.getCommand());
|
||||
ProcessBuilder pb = new ProcessBuilder("sh", "-c", target.getCommand());
|
||||
Process process = pb.start();
|
||||
int exitCode = process.waitFor();
|
||||
if (debug) System.out.println("Executed: " + target.getCommand() + " with exit code " + exitCode);
|
||||
if (exitCode != 0) System.err.println("Error executing " + target.getName());
|
||||
} catch (IOException | InterruptedException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user