命令行下的Java开发

ZDNet软件频道 时间:2003-04-01 作者:翻译:Java研究组织-arthur |  我要评论()
本文关键词:javatips
现在有许多命令行环境,当前用的最多的是bash、tcsh和zsh。我们将在我们的例子中使用bash命令行(shell)。
开发者长久以来可以分为Mac/Windows操作系统下的点击用户或者UNIX操作系统下的命令行用户。随着Mac机上OS X软件的出现以及Windows平台下Cygwin程序的存在,Mac或者Wiindows用户现在可以在享受Mac/Windows的点击方便界面的同时,使用强大的UNIX命令行界面。

现在有许多命令行环境,当前用的最多的是bash、tcsh和zsh。我们将在我们的例子中使用bash命令行(shell)。

首要的是让编辑变得简单。下面的一段代码是来自于命令行:

jikes com/generationjava/example/FirstClass.java

与其要输入java com.generatioinjava.examples.FirstClass来测试这段代码,不如使用javad函数以及!:1语法。

javad !:1

其中,!:1告诉系统重复上一个命令行中从0开始的第一个变量,javad是一个简单的命令行函数如下:

# Run a file from its source filename and not just its
# fully qualified class name.
function javad( ) {
   source=
   shift 1
   java `echo $ | sed 's/.java$//' | sed 's///./g'` $*
}

特别懒的程序员也许会想编译一个目录中的所有Java源代码。我们可以通过javacdir  com/完成此功能,其中javacdir函数实现如下:

# Compile everything in a directory.
# change javac to jikes if need be
function javacdir( ) {
   jikes `find -path '*.java'` 2>&1 | more
}

当我们运行javacdir的时候,我们会得到一堆错误,我们将很难分辨是那些类无法编译。所以我们要列出所有还没有对应一个.class文件的源代码文件。我们使用missingc com/来完成此功能,其中missingc函数实现如下:

function missingc( ) {
    for i in `findj `
    do
        if [ -e `echo $i | sed 's/java$/class/'` ]; then
            echo XXXX
        else
            echo $I
        fi
    done | grep -v 'XXXX'
}

这将列出所有缺少一个.class文件的源文件。可以通过将这些函数加入一个文本文件并编译运行这些文件获得这些函数。



责任编辑:炒饭

欢迎评论或投稿


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134