管理 Java 类路径(UNIX 和 Mac OS X)

http://tech.ddvip.com   2008年09月06日    社区交流

内容摘要:类路径是 Java™ 平台中最复杂也最令人头痛的部分之一,但熟练掌握类路径对成为一名专业 Java 程序员来说却又十分关键。在本文中,Elliotte Rusty Harold 为您阐述了类路径和源路径的复杂性,并向您展示了如何在 UNIX 和 Mac OS X 中熟练掌握它们。

  类路径可以连接 Java 运行库和文件系统。它定义编译器和解释器应该在何处查找要加载的 .class 文件。它的基本思想是:文件系统的层次结构反映了 Java 包的层次结构,而类路径则定义了文件系统中的哪个目录可以作为 Java 包层次结构的根。

  遗憾的是,通常文件系统非常复杂并依赖于平台,而且和 Java 包也不能很好地匹配。这样一来,不论是新用户还是资深 Java 程序员都深感类路径的棘手。没错,它的确不是 Java 平台好的一面,它让您到了下班的时候还在忙于调试一个顽固的小问题。

  当然采用 Eclipse 这样的优秀 IDE 可以减少管理类路径的一些困难,但只能说是一些,而且前提还必须是一切都正常(但这不大可能,因为总会有一些意外出现)。因此,每个 Java 程序员都必须要全面了解类路径,惟有如此,才有希望调试类路径中所出现的问题。

  在本文中,我给出了您所需要了解的有关 UNIX、Linux 和 Mac OS X 中的 Java 类路径(以及相关源路径)的全部内容。本文的 姊妹篇 则展示了 Windows 上的类似技术。文中列出的步骤可以作为指南,并能解决出现的大多数问题。

  包结构

  要掌握类路径,首先应从其源代码入手。每个类都属于一个包,而此包必须 遵守标准的命名约定。简单地说,包的名称要由颠倒的两级域名开始,比如 com.example 或 edu.poly,之后是至少一个或多个单词用于描述包的内容。比方说,假设有一个域名为 elharo.com,如果要创建一个 Fraction 类,可以将其放入如下包中:

  com.elharo.math

  com.elharo.numbers

  com.elharo.math.algebra.fields

  在颠倒的域名之后,需要使用单一单词的子包名。不要使用缩写形式,并要保证拼写正确。如果需要,可以使用拼写检查器。大部分与类路径相关的问题都是由在源代码中使用某个单词而在文件系统中使用的却是与之稍有不同的拼写或缩写而引起的。所以最好的做法就是总是使用拼写正确且没有缩写的名称。

来源:developerWorks    作者:Elliotte Harold    责编:豆豆技术应用

正在加载评论...