Organization of the Book

Java Programming on Linux is organized into 14 sections covering various aspects of Java use and development in the Linux environment.

Major Sections of Java Programming on Linux

Part I: A Brief Introduction to Java - If you’re new to Java, this part takes you on a brief tour of the language and the environment.

Chapter 1: What is Java?

Chapter 2: Moving from C++ to Java

Chapter 3: A Look at the Java Core Classes

Chapter 4: Additional Sun Java Class Library Specs

Part II: A Brief Introduction to Linux - If you’re new to Linux, this part gives you a brief introduction to the operating system and helps you get started setting up a Linux system.

Chapter 5: What is Linux?

Chapter 6: How to Obtain and Install Linux

Chapter 7: Configuring your Linux Desktop

Chapter 8: Installing Additional Linux Software

Part III: Setting up for Java Development and Deployment on Linux - This part describes the pieces you need to enable Java deployment and development in your Linux environment.

Chapter 9: Setting up a Linux Development Environment

Chapter 10: Java Components for Linux

Chapter 11: Choosing an Environment: 1.1 or 1.2?

Chapter 12: Software Licensing

Part IV: The Blackdown Port: A Sun Java SDK For Linux - The Blackdown organization is the group responsible for porting Sun's Java software to Linux. This part of the book describes how to obtain and install Java runtime and development software from Blackdown.

Chapter 13: Blackdown: The Official Linux Port

Chapter 14: Configuring the Linux SDK/JRE Environment

Chapter 15: Troubleshooting the Blackdown SDK/JRE Installation

Chapter 16: Participating in the Blackdown Community

Part V: Tools in the Blackdown SDK - The Java Software Development Kit (SDK) from Blackdown includes all the pieces you need to develop, test, and run Java. Here we describe the tools and how to use them.

Chapter 17: The Java Application Launchers: java, jre, and oldjava

Chapter 18: The Java Applet Viewer: appletviewer

Chapter 19: The Java Compiler: javac

Chapter 20: The Java Debugger: jdb

Chapter 21: The Java Archiver: jar

Chapter 22: The Java Native Code Header and Stub File Generator: javah

Chapter 23: The Java Documentation Generator: javadoc

Chapter 24: Miscellaneous SDK Development Tools

Part VI: Additional Java Runtime Environments - The Sun software distributed by Blackdown is not the last word in running Java on Linux. This part describes alternative Java environments you can use under Linux.

Chapter 25: The IBM JDK Port

Chapter 26: Kaffe: A Cleanroom Java Environment

Chapter 27: Japhar: A Cleanroom JVM

Chapter 28: GNU Classpath: Cleanroom Core Class Libraries

Chapter 29: Mozilla ElectricalFire: A New JVM

Chapter 30: Sun HotSpot Performance Engine

Chapter 31: gcj: A Compiled Java Solution

Chapter 32: TowerJ: A Server-Side Hybrid Java Environment

Part VII: Additional Java Runtime Components - This part of the book describes additional components to make your Java environment faster, better, and more capable.

Chapter 33: Just-In-Time Compilers

Chapter 34: Java3D Extension

Chapter 35: JavaComm, JCL, and RXTX: Serial Communications from Java

Part VIII: Compilers and Debuggers - You have many Java development tool choices beyond the SDK. Here we present some alternative compilers and debuggers you can use.

Chapter 36: The Jikes Compiler

Chapter 37: KJC: Kopi Java Compiler

Chapter 38: Generic Java Compilers

Chapter 39: The Jikes Debugger

Chapter 40: DDD: The Data Display Debugger

Part IX: IDEs, GUI Builders, and RAD Tools - This part explores advanced development tools - integrated development environments, user interface builders, and rapid application development tools - available for use on Linux. One such tool, Inprise JBuilder, is bundled on the accompanying CD-ROM.

Chapter 41: vTcLava: A Tcl-Based Java GUI Builder

Chapter 42: Korfe: A Python-based Java GUI Builder

Chapter 43: Inprise JBuilder

Chapter 44: The Emacs JDE

Chapter 45: ArgoUML Modeling Tool

Part X: Miscellaneous Development Tools - Here we explore some tools that can assist your Java development efforts under Linux.

Chapter 46: jad: A Java Decompiler

Chapter 47: DumpClass: A Tool for Querying Class Structure

Chapter 48: JMakeDepend: A Project Build Management Utility

Part XI: Java Application Distribution - This part of the book helps you distribute your Java applications to the rest of the world, including users on other operating systems.

Chapter 49: Distributing Java Applications and JREs

Chapter 50: Deploying Applets with Java Plug-in

Chapter 51: Crossing Platform Component Models: Bringing Java to ActiveX

Chapter 52: InstallShield: Creating Self-Installing Java Applications

Chapter 53: DashO: Optimizing Applications for Delivery

Part XII: Linux Platform Issues - This part discusses issues specific to using Java on the Linux platform, such as accessing native platform capabilities and dealing with the X Window System.

Chapter 54: Java, Linux, and Threads

Chapter 55: JNI: Mixing Java and Native Code on Linux

Chapter 56: X Window System Tips and Tricks

Part XIII: Java Performance - This part explores Java performance: why it's slow, why it's improving, and how you can tune your own applications for better performance.

Chapter 57: Why is Java Slow?

Chapter 58: A Heavy Look at Lightweight Toolkits

Chapter 59: An Approach to Improving Graphical Rendering Performance

Chapter 60: PerfAnal: A Free Performance Analysis Tool

Chapter 61: Heap Analysis Tool: Understanding Memory Utilization

Chapter 62: OptimizeIt: Live Performance Analysis

Chapter 63: Understanding Linux Kernel Performance

Chapter 64: Profiling User-Space Native Code

Part XIV: Java and Linux on Servers - Java and Linux both have important roles on three-tier applications servers and Web servers. This part of the book discusses using Linux and Java for server applications.

Chapter 65: Java on the Web: Java Servlets and Apache JServ

Chapter 66: Java from Web Pages: JSSI and JSP

Chapter 67: Java, Linux, and Three-Tiered Architectures

Back to Java Programming on Linux Home Page

Last Modified: 04/01/2000 10:08:35