@@ -0,0 +1,1531 @@
+package com.github.sparkcaller.utils;%0A%0Aimport java.io.*;%0A%0Apublic class FileExtractor %7B%0A%0A    public static String extractExecutable(String resourceFilePath) %7B%0A%0A        if (!resourceFilePath.startsWith(%22/%22)) %7B%0A            resourceFilePath = %22/%22 + resourceFilePath;%0A        %7D%0A%0A        if (resourceFilePath == null)%0A            return null;%0A%0A        try %7B%0A            // Read the file we're looking for%0A            InputStream fileStream = FileExtractor.class.getResourceAsStream(resourceFilePath);%0A%0A            // Was the resource found?%0A            if (fileStream == null)%0A                return null;%0A%0A            // Grab the file name%0A            String%5B%5D chopped = resourceFilePath.split(%22%5C%5C/%22);%0A            String fileName = chopped%5Bchopped.length-1%5D;%0A%0A            // Create our temp file%0A            File tempFile = File.createTempFile(%22sparkcaller%22 + System.nanoTime(), fileName);%0A%0A            // Delete the file on VM exit%0A            tempFile.deleteOnExit();%0A%0A            OutputStream out = new FileOutputStream(tempFile);%0A%0A            // Write the file to the temp file%0A            byte%5B%5D buffer = new byte%5B1024%5D;%0A            int len = fileStream.read(buffer);%0A            while (len != -1) %7B%0A                out.write(buffer, 0, len);%0A                len = fileStream.read(buffer);%0A            %7D%0A%0A            fileStream.close();%0A            out.close();%0A%0A            tempFile.setExecutable(true);%0A            return tempFile.getAbsolutePath();%0A%0A        %7D catch (IOException e) %7B%0A            return null;%0A        %7D%0A    %7D%0A%7D%0A%0A

Add a class which can be used to extract binaries from inside the JAR file.