Class MainClassFinder
java.lang.Object
org.springframework.boot.loader.tools.MainClassFinder
Finds any class with a
public static main method by performing a breadth first
search.- Since:
- 1.0.0
- Author:
- Phillip Webb, Andy Wilkinson
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic StringfindMainClass(File rootDirectory) Find the main class from a given directory.static StringfindMainClass(JarFile jarFile, String classesLocation) Find the main class in a given jar file.static StringfindSingleMainClass(File rootDirectory) Find a single main class from the givenrootDirectory.static StringfindSingleMainClass(File rootDirectory, String annotationName) Find a single main class from the givenrootDirectory.static StringfindSingleMainClass(JarFile jarFile, String classesLocation) Find a single main class in a given jar file.static StringfindSingleMainClass(JarFile jarFile, String classesLocation, String annotationName) Find a single main class in a given jar file.
-
Constructor Details
-
MainClassFinder
public MainClassFinder()
-
-
Method Details
-
findMainClass
Find the main class from a given directory.- Parameters:
rootDirectory- the root directory to search- Returns:
- the main class or
null - Throws:
IOException- if the directory cannot be read
-
findSingleMainClass
Find a single main class from the givenrootDirectory.- Parameters:
rootDirectory- the root directory to search- Returns:
- the main class or
null - Throws:
IOException- if the directory cannot be read
-
findSingleMainClass
public static String findSingleMainClass(File rootDirectory, String annotationName) throws IOException Find a single main class from the givenrootDirectory. A main class annotated with an annotation with the givenannotationNamewill be preferred over a main class with no such annotation.- Parameters:
rootDirectory- the root directory to searchannotationName- the name of the annotation that may be present on the main class- Returns:
- the main class or
null - Throws:
IOException- if the directory cannot be read
-
findMainClass
Find the main class in a given jar file.- Parameters:
jarFile- the jar file to searchclassesLocation- the location within the jar containing classes- Returns:
- the main class or
null - Throws:
IOException- if the jar file cannot be read
-
findSingleMainClass
public static String findSingleMainClass(JarFile jarFile, String classesLocation) throws IOException Find a single main class in a given jar file.- Parameters:
jarFile- the jar file to searchclassesLocation- the location within the jar containing classes- Returns:
- the main class or
null - Throws:
IOException- if the jar file cannot be read
-
findSingleMainClass
public static String findSingleMainClass(JarFile jarFile, String classesLocation, String annotationName) throws IOException Find a single main class in a given jar file. A main class annotated with an annotation with the givenannotationNamewill be preferred over a main class with no such annotation.- Parameters:
jarFile- the jar file to searchclassesLocation- the location within the jar containing classesannotationName- the name of the annotation that may be present on the main class- Returns:
- the main class or
null - Throws:
IOException- if the jar file cannot be read
-