public static void main(String... args) throws Exception { String programName = BuildJar.class.getName(); String usage = String.format("usage: java %s DIR\n\n" + "The directory DIR should contain the MANIFEST.MF file as created by\n" + "a classifier DataWriter, and all files created by training a model\n" + "from the corresponding training-data.xxx file\n", programName); // usage message for wrong number of arguments if (args.length != 1) { System.err.format("error: wrong number of arguments\n%s", usage); System.exit(1); } File dir = new File(args[0]); // get the classifier builder from the training directory JarClassifierBuilder<?> classifierBuilder = JarClassifierBuilder.fromTrainingDirectory(dir); classifierBuilder.packageClassifier(dir); } }
/** * Loads a classifier builder from the training directory and invokes * {@link #trainClassifier(File, String...)} and {@link #packageClassifier(File)}. * * @param trainingDirectory * The directory where {@link #saveToTrainingDirectory(File)} has saved the model * training files. * @param trainingArguments * Any additional arguments that should be passed to the classifier trainer via * {@link #trainClassifier(File, String...)}. */ public static void trainAndPackage(File trainingDirectory, String... trainingArguments) throws Exception { JarClassifierBuilder<?> classifierBuilder = fromTrainingDirectory(trainingDirectory); classifierBuilder.trainClassifier(trainingDirectory, trainingArguments); classifierBuilder.packageClassifier(trainingDirectory); }