java

Provides Java support. More...

Since: Qbs 1.4

Properties

Detailed Description

The java module contains the properties and rules for building Java projects.

Relevant File Tags

TagAuto-tagged File NamesSinceDescription
"java.class"-1.4This tag is attached to the output artifacts of the rule that runs the javac tool.
"java.jar"-1.4This tag is attached to the output artifacts of the rule that runs the jar tool.
"java.java"*.java1.4Source files with this tag serve as inputs to the rule running the javac tool.
"java.manifest"*.mf1.8The contents of files with this tag will be aggregated with the values in manifest.

Property Documentation

additionalClassPaths : stringList

The locations beside this product's class output path to consider when compiling.

Default: Undefined


additionalCompilerFlags : stringList

A list of compiler flags not covered by any of the properties in this module.

Default: Undefined


additionalJarFlags : stringList

A list of archiver flags not covered by any of the properties in this module.

Default: Undefined


bootClassPaths : stringList

A list of non-standard bootstrap class files.

Default: Undefined


compilerFilePath : string

The command to invoke when compiling Java sources.

Default: compilerName, prefixed by jdkPath if it is defined.


compilerName : string

The file name of the Java compiler.

Default: "javac"


enableWarnings : bool

Whether warnings are emitted when compiling Java sources.

Default: true


interpreterFilePath : string

The command to invoke when executing Java code.

Default: interpreterName, prefixed by jdkPath if it is defined.


interpreterName : string

The file name of the Java interpreter.

Default: "java"


jarFilePath : string

The command to run when creating or extracting jar files.

Default: jarName, prefixed by jdkPath if it is defined.


jarName : string

The file name of the jar tool.

Default: "jar"


[since Qbs 1.4.1] jdkIncludePaths : pathList

A list of include paths for native header files.

Applications using JNI to interface with native code should add these paths to cpp.includePaths.

Default: Determined automatically.

This property was introduced in Qbs 1.4.1.


jdkPath : string

The base path of the Java Development Kit (JDK).

This is equivalent to the JAVA_HOME environment variable, and by default will be determined automatically from one of the following:

  • JAVA_HOME environment variable (all platforms)
  • Registry (Windows)
  • java_home tool (macOS)
  • Known JDK paths (other Unix platforms)

Default: Determined automatically.


languageVersion : string

The Java language version to interpret source code as.

If left undefined, the compiler will use its default.

Default: Undefined


[since Qbs 1.4.2] manifest : var

The properties to add to the manifest file when building a JAR.

The contents of this property will be aggregated with the values from any files tagged "java.manifest".

If this property and a manifest file contain the same key, this property will take precedence. If left undefined, this property will not be taken into account.

Default: Undefined

This property was introduced in Qbs 1.4.2.


manifestClassPath : stringList

A list of entries to add to the manifest's Class-Path when building a JAR.

Default: Undefined


runtimeVersion : string

The version of the Java runtime to generate compatible bytecode for.

If left undefined, the compiler will use its default.

Default: Undefined


warningsAsErrors : bool

If this property is true, the compiler will abort where it would normally emit a warning.

Default: false