![]() ![]() |
|
第二章Java程序开发与运行环境(2) | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 14:42:07 文章录入:杜斌 责任编辑:杜斌 | |
|
|
在 早 期 前Betal版 的Java调 试 器jdb是 命 令 行 形 式 的, 如 用Sun公司 的dbx调 试 器。 用jdb来 调 试Java应 用 程 序, 在 调 试?reg;前, 要确 证 你 的 应 用 程 序 是 带 标 志 -g编 译 的。 例 如: javac -g HelloWorld.java help命 令 将 显 示jdb 里 的 可 用 命 令 列 表。 >help <命 令 列 表> threads [threadgroup]--列 出 线 程 thread <thread id>- - 设 置 缺 省 线 程 Suspend [threads id(s)]- - 将线 程 挂 起 resume [thread id(s)]- - 重 新 启 动 线 程 where [id] |a1|-- 打 印 线 程 的 堆 栈 threadgroups--列 出 线 程 组 号 threadgroup <name>-- 设 置 当 前 线 程 组 print <id> [id(s)]- - 打 印 对 象 或 域 dump <id> [id(s)]- - 打 印 所 有 对 象 信 息 locals- - 打 印当 前 堆 栈 所 有 局 部 变 量 classes- - 列 出 当 前 所 知 的 类 methods <class id>- - 列 出 一 个 类 的 成 员 函 数 stop in <classid>.<method>-- 在 一 个 成 员 函 数 里 设 置 断 点 stop at <class.id>:<line>-- 在 一 行 里 设 置 断 点 up [n frames]- - 在 线 程 堆 栈 里 往 上 移 down [n frames]- - 在 线 程 堆 栈 里 往 下 移 clear <class id>:<line>-- 清 除 一 个 断 点 step - - 执 行 当 前 行 cont- - 从 断 点 处 继续 执 行 catch <class.id>- - 为 指 定 的 情 况 中 断 ignor <class.id>-- 为 指 定 的 情 况 忽 略 list [line number]- - 打 印 源 程 序 use [Sourcefile path]- - 显 示 或 改 变 源 路 径 memeory- - 报 告 内 存 使 用 情 况 load classname- - 加 载Java类 以 便 调 试 run <args>- - 开 始执 行 加 载 的 类 !!- - 重 复 以 上 的 命 令 help(?)- - 列 出 所 有的 命 令 exit( or quit)- - 离 开 调 试 器 2.1.3 Java程 序 的 执 行 语 法: java [ options ] classname <args> java_g [ options ] classname <args> 描 述: java命 令 由java编 译 器javac输 出 的Java字 节 码。 classname参 数 是 要 执 行 的 类 名 称。 注 意 任 意 在 类 名 称 后的 参 数 都 将 传 递 给 要 执 行 类 的main 函 数。 java执 行 完main函 数 后 推 出, 除 非main函 数 创 建 了 一 个 或 多个 线 程。 如 果main函 数 创 建 了 其 它 线 程,java总 是 等 到 最 后 一个 线 程 推 出 才 推 出。 选 项: -cs, -checksource 当 一 个 编 译 过 的 类 调 入 时, 这 个 选 项 将比 较 字 节 码 更 改 时 间 与 源 文 件 更 改 时 间, 如 果 源 文 件 更改 时 间 靠 后, 则 重 新 编 译 此 类 并 调 入 此 新 类。 -classpath path 定 义javac搜 索 类 的 路 径。 它 将 覆 盖 缺 省 的CLASSPATH环境 变 量 的 设 置。 路 径 是 由 一?copy;由 逗 号 隔 开 的 路 径 名 组成, 一 般 格 式 如 下: .;<your_path> 例 如: .;C:\java\doc\classes;C:\tools\java\classes 表 示 解 释 器 遇 到 一 个 新 类, 它 先 在 本 文 件 中 查 找 它 的 定义, 如 果 没 有, 则 在 本 文 件 所 处 目 录 下 其 它 文 件 中 查 找 它的 定 义, 如 果 还 没 有, 则 继 续 搜 索C:\java\doc\classes目 录 中 的所 有 文 件, 以 此 类 推。 -mx x 设 置 最 大 内 存 分 配 池, 大 小 为x,x必 须 大 于1000bytes。缺 省 为16兆。 -ms x 设 置 垃 圾 回 收 堆 的 大 小 为x,x必 须 大 于1000bytes。 缺省 为1兆。 -noasyncgc 关 闭 异 步 垃 圾 回 收 功 能。 此 选 项 打 开 后, 除 非显 式 调 用 或 程 序 内 存 溢 出, 垃 圾 内 存 都 不 回 收。 本 选 项 不打 开 时, 垃 圾 回 收 线 程 与 其 它 线 程 异 步 同 时 执 行。 -ss x 每 个Java线 程 有 两 个 堆 栈, 一 个 是java代 码 堆 栈, 一 个是C代 码 堆 栈。-ss选 项 将 线 程 理C代 码 用 的 堆 栈 设 置 成 最 大 为x。 -oss x 每 个Java线 程 有 两 个 堆 栈, 一 个 是java代 码 堆 栈, 一个 是C代 码 堆 栈。-oss选 项 将 线 程 理java代 码 用 的 堆 栈 设 置 成最 大 为x。 -v, -verbose 让java解 释 器 在 每 一 个 类 被 调 入 时, 在 标 准 输出 打 印 相 应 信 息。 环 境 变 量 CLASSPATH 用 来 提?copy;给 系 统 搜 索 用 户 定 义 的 类 的 缺 省 路径。 各 路 径 由 分 号 隔 ?例 如: .;C:\java\doc\classes;C:\tools\java\classes 表 示 解 释 器 遇 到 一个 新 类, 它 先 在 本 文 件 中 查 找 它 的 定 义, 如 果 没 有, 则 在本 文 件 所 处 目 录 下 其 它 文 件 中 查 找 它 的 定 义, 如 果 还 没有, 则 继 续 搜 索C:\java\doc\classes目 录 中 的 所 有 文 件, 以 此 类推。
2.2 JWS环 境 l Portfolio 和Project管 理 器 l 源 文 件 编 辑 器 l Build管 理 工 具 l 调 试 器 l 项 目 测 试 l ?copy;展 在 线 超 文 本 连 接 到 帮 助 文 件 这?copy;工 具 在Java WorkShop的 第 一 页 都 有 类 似Web页 面 的 超级 连 接, 如 图: 注 意,Java WorkShop采 用 的 是 当 今 浏 览 器 的 界 面 风 格, 你 想作 什 么, 只 需 找 到 相 应 的 超 级 连 接 就 可 以 了, 具 体 编 译 及调 试 功 能 是 用 嵌 如 到HTML文 档 里 的Applet实 现 的, 因 此, 对 习惯 于 用internet浏 览 方 式 的 用 户 来 说, 这 种 界 面 很 容 易 接 受。 2.2.1 Portfolio 和Project管 理 器 1. 怎 样 编 译 本 项 目 2. 怎 样 调 试 和 浏 览 本 项 目 3. 怎 样 运行 本 项 目 4. 怎 样 发 布 本 项 目 2.2.2 源 文 件 编 辑 器 2.2.3 Build管 理 工 具 2.2.4 Visul Java(图 形 界 面 构 造?copy; 2.2.5 调 试 器 本 章 小 结: |
|
![]() ![]() |