java.lang.Object
de.sormuras.bach.Bach
public class Bach extends Object
Java Shell Builder - build modular projects with JDK tools.
As an example, a project named demo and with version 47.11 can be built with
the following code:
var configuration = Configuration.ofSystem();
var project = Project.of("demo", "47.11");
new Bach(configuration, project).build();
The Java Development Kit provides at least the following tools via the ToolProvider interface.
jar- create an archive for classes and resources, and manipulate or restore individual classes or resources from an archivejavac- read Java class and interface definitions and compile them into bytecode and class filesjavadoc- generate HTML pages of API documentation from Java source filesjavap- disassemble one or more class filesjdeps- launch the Java class dependency analyzerjlink- assemble and optimize a set of modules and their dependencies into a custom runtime imagejmod- create JMOD files and list the content of existing JMOD files
- See Also:
- JDK Tools
-
Field Summary
Fields Modifier and Type Field Description static ModuleDescriptor.VersionVERSIONVersion of the Java Shell Builder. -
Constructor Summary
Constructors Constructor Description Bach(Configuration configuration, Project project) -
Method Summary
-
Field Details
-
VERSION
Version of the Java Shell Builder.
-
-
Constructor Details
-
Method Details
-
main
Main entry-point.- Parameters:
args- the arguments
-
of
Create new Bach instance for the given project.- Parameters:
project- The project instance to use- Returns:
- A new
Bachinstance
-
of
Create new Bach instance with a project parsed from current user directory.- Parameters:
operator- The operator may return a modified project based on the parsed one- Returns:
- A new
Bachinstance - See Also:
UnaryOperator.identity()
-
configuration
-
flags
-
is
-
not
-
logbook
-
log
-
log
-
project
-
base
-
main
-
http
-
build
public void build() -
buildProject
public void buildProject() -
buildLibrariesDirectoryByResolvingMissingExternalModules
public void buildLibrariesDirectoryByResolvingMissingExternalModules() -
buildLibrariesDirectoryByResolvingModules
-
buildProjectModules
public void buildProjectModules() -
buildMainModules
public void buildMainModules() -
buildApiDocumentation
public void buildApiDocumentation() -
buildCustomRuntimeImage
public void buildCustomRuntimeImage() -
buildTestModules
public void buildTestModules() -
buildTestPreviewModules
public void buildTestPreviewModules() -
buildTestReportsByExecutingTestModules
public void buildTestReportsByExecutingTestModules() -
buildTestReportsByExecutingTestPreviewModules
public void buildTestReportsByExecutingTestPreviewModules() -
buildTestReportsByExecutingTestModule
-
buildTestReportsByExecutingTestPreviewModule
-
checkConditionForBuildApiDocumentation
public boolean checkConditionForBuildApiDocumentation() -
checkConditionForBuildCustomRuntimeImage
public boolean checkConditionForBuildCustomRuntimeImage() -
computeHttpClient
-
computeLinkForUnlinkedModule
-
computeJavacForMainSources
-
computeJarForMainSources
-
computeJarForMainModule
-
computeJavadocForMainSources
-
computeJarForApiDocumentation
-
computeJLinkForCustomRuntimeImage
-
computeJavacForTestSources
-
computeJavacForTestPreview
-
computeJarForTestModule
-
computeJarForTestPreviewModule
-
computeJarCall
-
computeJUnitCall
-
toString
-