Class CompileHelper

java.lang.Object
fr.ifremer.isisfish.util.CompileHelper

public class CompileHelper extends Object
Compile helper used to compile Java code. JDK must be installed to use compilation. (JRE won't work). Created: 12 janv. 2006 15:29:53
Version:
$Revision$ Last update: $Date$ by : $Author$
Author:
poussin
  • Field Details

    • patternGen1

      protected static Pattern patternGen1
  • Constructor Details

    • CompileHelper

      public CompileHelper()
  • Method Details

    • searchSrcToCompile

      public static List<File> searchSrcToCompile(File srcDir, File destDir)
      Recherche tous les fichiers qui un source plus recent que la version compilé.
      Parameters:
      srcDir -
      destDir -
      Returns:
      File list
    • loadClass

      public static Class<?> loadClass(String fqn)
      Load la class demandé.
      Parameters:
      fqn - le nom complet de la classe a charger
      Returns:
      la classe souhaité ou null si la class n'est pas trouvée
    • newInstance

      public static Object newInstance(String fqn)
    • compile

      public static int compile(JavaSourceStorage source, File destDir, boolean force, PrintWriter out)
      Compile le fichier source en .class si le source est plus recent que le .class
      Parameters:
      source - le JavaSourceStorage a compiler
      destDir - le repertoire destination de la compilation
      force - si vrai alors meme si le fichier destination est plus recent la compilation aura lieu
      out - le flux sur lequel le resultat de la compilation doit apparaitre. Peut-etre null, dans ce cas les sorties standards sont utilisées.
      Returns:
      0 si la compilation a reussi une autre valeur sinon
    • compile

      public static int compile(File rootSrc, File src, File dest, PrintWriter out)
      Methode permettant de compiler un fichier Java.
      Parameters:
      rootSrc - le répertoire ou se trouve les sources
      src - Le fichier source a compiler, il doit etre dans un sous répertoire de rootSrc en fonction du package
      dest - le repertoire destination de la compilation
      out - l'objet sur lequel on ecrit la sortie (erreur) de la compilation
      Returns:
      un nombre different de 0 s'il y a une erreur
      • -1000 si l'exception vient de la recherche du compilateur par introspection
      • -10000 si une autre exception
      • sinon les valeurs retourné par le compilateur java
    • compile

      public static int compile(File rootSrc, Collection<File> src, File dest, PrintWriter out)
      Methode permettant de compiler un ensemble de fichiers Java.
      Parameters:
      rootSrc - le répertoire ou se trouve les sources
      src - Le fichier source a compiler, il doit etre dans un sous répertoire de rootSrc en fonction du package
      dest - le repertoire destination de la compilation
      out - l'objet sur lequel on ecrit la sortie (erreur) de la compilation
      Returns:
      un nombre different de 0 s'il y a une erreur
      • -1000 si l'exception vient de la recherche du compilateur par introspection
      • -10000 si une autre exception
      • sinon les valeurs retourné par le compilateur java
    • compile

      protected static int compile(List<File> classpath, Collection<File> src, File dest, PrintWriter out)
      Compile un fichier java.
      Parameters:
      src - les fichiers java source
      dest - le repertoire destination
    • getClassPathAsString

      public static String getClassPathAsString(List<File> classpath) throws IOException
      Return full classpath (for compilation or javadoc) as string. Separated by File.pathSeparator. Add :
      • System.getProperty("java.class.path")
      • All first jar dependency (META-INF/MANIFEST.MF)
      Parameters:
      classpath - initial classpath
      Returns:
      classpath as string
      Throws:
      IOException
    • getClassPathAsFiles

      public static Iterable<File> getClassPathAsFiles(List<File> classpath) throws IOException
      Return full classpath (for compilation or javadoc) as string. Separated by File.pathSeparator. Add :
      • System.getProperty("java.class.path")
      • All first jar dependency (META-INF/MANIFEST.MF)
      Parameters:
      classpath - initial classpath
      Returns:
      classpath as string
      Throws:
      IOException
    • extractDoc

      public static String extractDoc(String category, String name, Class<?> javaInterface)
      Extract documentation from interface (Equation).
      Parameters:
      category -
      name -
      javaInterface -
      Returns:
      doc
    • createHREF

      protected static String createHREF(String type, String... texts)
      Create a html link to isis javadoc.
      Parameters:
      type - class type
      texts - link display text
      Returns: