Alcatel-Lucent nmake Product Builder
Building Java Code
Dependency-based Java Support
Alcatel-Lucent nmake release lu3.4 introduced dependency-based Java support. The initial phases of support use an external Java scanner to derive dependencies. We are continuing work to expand and improve Java support. Possible future enhancements include a seamless Java dependency scanner and support for other file types.
The dependency-based Java support currently provides the following capabilities. For more information, see the :JAVA: manual page:
- automatic dependency generation
- incremental dependency update
- handles dependency cycles and implicit targets
- optional batched compilations for improved java compilation performance
- concurrent and distributed build **
- incremental global build
- incremental inside package local build
- simplified user interface -- :JAVA: assertion
- concise package level specification -- automatically finds and manages package source given only package hierarchy roots
- viewpathing support
- #empty file filtering
** As of release lu3.6, batched concurrent builds are supported.
Java code can also be built without dependency tracking (see newsletter articles below). We consider the dependency-based solution to be more reliable in keeping the necessary class files up-to-date in incremental builds, thus we recommend projects move to dependency-based Java builds. The non-dependency based solutions may be used for small, simple Java applications or where older versions of nmake must be used.
Jar File Support
Alcatel-Lucent nmake release lu3.6 introduced support for generating jar files. Jar file support includes the following features.
- Support for jdk 1.1.x, 1.2, 1.3, 1.4, 1.5
- viewpathing support
- incremental updates **
- index file **
- manifest file
** When supported by the jdk
Manual Pages
- nmake 13
:JAVA: - nmake 13
:JAR: - nmake 12
:JAVA: - nmake 12
:JAR: - nmake 11
:JAVA: - nmake 11
:JAR: - nmake 10
:JAVA: - nmake 10
:JAR: - nmake alu3.9
:JAVA: - nmake alu3.9
:JAR: - nmake lu3.8
:JAVA: - nmake lu3.8
:JAR: - nmake lu3.7
:JAVA: - nmake lu3.7
:JAR: - nmake lu3.6
:JAVA: - nmake lu3.6
:JAR: - nmake lu3.5
:JAVA: - nmake lu3.4
:JAVA:
References
- Java inside-package local build from the lu3.5 release notes.
- Dependency-based Java support from the lu3.4 release notes.
- JavaDeps package required for the above :JAVA: assertion.
Newsletter Articles
- #empty Java Files (Issue 24 - January 2007)
- A Transition to :JAVA: (Issue 13 - December 2002)
- lu3.5 Feature - Inside-package Local Java Builds (Issue 12 - August 2002)
- lu3.4 Java Support (Issue 9 - September 2001)
- Introduction of Dependency-based Java Build Support (Issue 7 - January 2001)
- Creating Jar Files (Issue 5 - May 2000)
- Java Support for Non-dependency based builds (Issue 4 - January 2000)







