在Windows上安装「算法 第四版」组件

这篇文档将向你介绍如何在Windows系统上安装本书将用到的Java开发环境,同时我们也提供了一个手把手的、使用我们提供的DrJava工具或者用命令行来创建、编译和运行你的第一个Java程序的手册,这个过程中用到的所有软件都可以自由下载

本操作指南适用于32位和64位的Windows 8、Windows 7、Vista SP1和XP SP3

——————

0. 安装开发环境

——————

我们提供的安装器将会自动下载、安装和配置你将用到的所有开发环境,包括Java SE 7、DrJava、教材库和命令行工具

  • 在电脑上登陆以后你会用来写代码的那个Windows账户,这个账户必须具有管理员权限(Administrator)且电脑必须连接到网络。『译者注:以我的经验,你最好还有一个全局FQ工具,VPN或者Shadowsocks,不然很有可能下载失败』
  • 下载algs4.exe并双击进行安装,如果在安装开始前你收到一个用户账户控制的警告,点击「是」或者「允许」,如果在安装结束后你收到一个程序兼容性警告,点击「该程序已正确安装」
  • 如果安装成功,你将看到如下两个信息:
    • 一个内容这个运行日志的命令行窗口
    • 一个内容为蓝色靶心和教科书的标准绘图窗口

    需要注意的是:如果你的网络连接较慢的话,安装程序需要持续几分钟甚至更长时间

  • 删掉「algs4.exe」

——————

1. 在DrJava中创建程序

——————

现在你已经为你的第一个Java程序做好了准备,你将在一个叫DrJava的程序中开发你的Java程序。DrJava包含了语法高亮、匹配括号、自动缩进和显示行号等特性。

  • 在上一节中的安装包已经在桌面上创建了DrJava的快捷方式『译者注:如果不慎删掉,还可以在如下目录中找到该程序:C:\Users\Username\algs4』。双击以启动DrJava,如果你收到一个Windows安装警告,点击「允许运行」或者「不禁止」
  • 在DrJava的主窗体中,请向下面一样准确无误得输入HelloWorld.java中的代码,哪怕你只是漏掉了一个分号,这个程序也不会运行,在你输入的时候,DrJava会为你准备缩进
  public class HelloWorld {
      public static void main(String[] args) {
          System.out.println("Hello, World");
      }
  }
  
  • 最后,点击「保存」按钮来保存该文件,使用DrJava创建文件夹C:\Users\username\algs4\hello并将文件命名为「HelloWorld.java」,这个文件名是大小写敏感的而且必须匹配Java程序中的类名,其中username是你的Windows用户名

——————

2. 在DrJava中编译程序

——————

现在我们来将你的Java代码转化为可以在你的电脑上运行的东西,点击「编译」按钮(Compile),如果一切顺利的话,你会在DrJava底部的编译器输出窗格(Compiler Output Pane)看到这样一条信息

Compilation completed.

如果DrJava没有编译成功,你应该是输入错了一些东西,重新仔细检查你的代码,你可以用编译器输出窗格中的信息作为参考

——————

3. 在DrJava中运行程序

——————

现在来运行你的程序,这是很有趣的部分

  • 在底部的交互窗格(Interactions pane)中输入下列信息,按照习惯,我们高亮了你用粗体输入的部分『译者注:由于博客模板限制我没办法在我这里加粗相应内容,需要看加粗的去看原文吧』
  > java HelloWorld

如果一切顺利,你会看到如下信息:

Welcome to DrJava.  Working directory is C:\Users\username\algs4\hello
> java HelloWorld
Hello, World
  • 你或许会在成功运行前重复很多遍「编辑 - 编译 - 运行」的循环

——————

4. 命令行界面

——————

命令行工具提供了DrJava中也有的功能,包括重定向和管道。你将在「命令行工具」中输入你的指令

  • 安装器在桌面上创建了一个命令行工具(Command Prompt),双击以启动命令行,你将会看到类似于这样的消息:
Microsoft Windows [Version 6.3.9600]
(c) 2013 Microsoft Corporation. All rights reserved.

C:\Users\username>
  • 首先确认一下Java编译器已经被正确安装,在命令行中输入javac -version并确保输出内容跟下面一样
C:\Users\username>javac -version
javac 1.7.0_67
  • 其次确认一下Java解释器被正确安装,在命令行中输入java -version并确保输出内容跟下面一样
C:\Users\username>java -version
java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)

如果你的机器是32位的,那么最后一行的内容应该是

Java HotSpot(TM) Client VM (build 24.65-b04, mixed mode, sharing)

——————

5. 在命令行中编译程序

——————

你可以使用javac命令来将你的Java代码转化为可以在你的电脑上运行的东西

  • 在命令行中,通过cd命令导航到包含HelloWorld.java的目录下,一般是C:\Users\username\algs4\hello,例如:
C:\Users\username>cd C:\Users\username\algs4\hello
C:\Users\username\algs4\hello>

javac命令进行编译

C:\Users\username\algs4\hello>javac HelloWorld.java
C:\Users\username\algs4\hello>

如果HelloWorld.java在当前目录下的话,你应该没有看到任何报错信息

  • 如果用到了我们的标准库,你应该用javac-algs4来代替javac,例如:如果需要编译TestAlgs4.java,这个程序引用了我们的标准绘图库,你应该这样写命令:
C:\Users\username\algs4>javac-algs4 TestAlgs4.java

『译者注 - start』

同理,如果你需要运行javac-algs4编译出来的.class文件的话,你也需要使用java-algs4 来运行,而不是使用java来运行

『译者注 - end』

——————

6. 在命令行中运行程序

——————

  • 你需要使用java命令来运行你的程序:
C:\Users\username\algs4\hello>java HelloWorld
Hello, World

你会在输出中看到Hello, World

  • 如果你想使用教科书提供的库的话,需要用java-algs4 来替代java,例如,在测试标准绘图和标准音频时你可以使用下面两条命令:

『译者注:使用之前需要注意!!!第一条命令是标准绘图,随便使用;第二条命令是标准音频,使用之后麦克风会开始播放奇怪的声音,请先调小音量,运行之后如果需要停止运行,除了直接关闭命令行窗口外,你还可以使用Ctrl+C的组合键来关闭这个运行』

C:\Users\username\algs4\hello>java-algs4 edu.princeton.cs.algs4.StdDraw
[ displays a graphics window with some geometric shapes and text ]

C:\Users\username\algs4\hello>java-algs4 edu.princeton.cs.algs4.StdAudio
[ plays an A major scale ]

——————

7. 检查风格和查找bug

——————

你可以使用检查缝合查找bug两个工具来核查你的代码风格并检查一些简单的bug

  • 在命令行中可以这样使用检查风格功能:
C:\Users\username\algs4\hello>checkstyle-algs4 HelloWorld.java
Running checkstyle on HelloWorld.java:
Starting audit...
Audit done.

下面是一张可以检查的清单,你可以自定义这个风格检查,自定义的方法是编辑这个文件:C:\Users\username\algs4\checkstyle-6.9\checkstyle.xml

  • 在命令行中可以这样使用查找bug功能
C:\Users\username\algs4\hello>findbugs-algs4 HelloWorld.class
Running findbugs on HelloWorld.class:

下面是一张可以检查的清单,你可以自定义这个bug检查,自定义的方法是编辑这个文件:C:\Users\username\algs4\findbugs-3.0.1\findbugs.xml

——————

常见问题

——————

Q:我之前使用过另一本教材「Introduction to Programming in Java」的「introcs.app」安装器,我还应该使用「algs4.exe」安装器吗?

A: 是的,我们推荐「algs4.exe」安装器是因为「introcs.app」安装器不包含「algs4.jar」库和相应的命令javac-algs4java-algs4

Q: 运行安装器时我遇到了访问被拒绝的错误信息,我该怎么办

A: 确保你使用了一个管理员权限的账户,再重新运行一次安装器。另外,你的机器上可能有加密软件禁止写入C:\Users\username\AppData\Local目录,这也可能导致安装器运行失败

Q:安装器根本不运行,为什么?

A:这个安装器的运行需要PowerShell。运行Windows Update来升级你的电脑,如果是XP系统,你需要SP3。在XP SP3或者Vista环境下你也可以手动下载PowerShell2.0

Q: 我可以把安装目录设置在C盘以外的驱动器上吗?

可以,但是你需要自己手动修改参数

Q: 安装器在我的机器上不工作,怎么办?

A: 联系一个工作人员,然后检查一下哪儿出问题了

Q: 安装器到底做了些什么?

A: 简而言之就是:下载,安装,配置了Java、DrJava、Checkstyle、Findbugs和教材库,下面是一个更加详细的清单:

  1. java32.zip或者java64.zip下载和安装Java SE 7 Update 67,这其中包含了Java Runtime Environment(java.exe)和一部分Java Development Kit(javac.exe and toools.jar)
  2. algs4.jar下载教材库,并创建好javac-algs4java-algs4的包装脚本
  3. checkstyle.zip下载并安装Checkstyle 6.9,并从checkstyle.xml下载checkstyle的配置文件,给checkstyle-algs4创建包装脚本
  4. findbugs.zip下载和安装Findbug3.0.1,从findbugs.xml下载findbugs的配置文件,为findbugs-algs4创建包装脚本
  5. drjava.jar下载最新版本的DrJava,为DrJava在桌面上创建一个快捷方式,从drjava-config.txt下载一个DrJava的配置文件到C:\Users\username\.drjava,注意,这个操作会覆盖掉任何已经存在的.drjava配置文件
  6. 在环境变量中,将C:\Users\username\algs4\java\binC:\Users\username\algs4\bin添加到用户变量的PATH中
  7. 定制命令行工具,启用QuickEdit和Insert模式,将Screen Buffer Size设置为800-by-500,在桌面上创建一个命令行的快捷方式
  8. 通过编译和运行TestAlgs4.java测试是否安装成功

**Q: 我要如何完全卸载 algs4.exe ?

A:

  1. 删除C:\Users\username\algs4文件夹(但是要注意保存你的.java文件)
  2. 从你的环境变量的PATH变量中删除下面两个条目:
    • C:\Users\username\algs4\bin
    • C:\Users\username\algs4\bin
  3. 删除DrJava配置文件C:\Users\username\.drjava
  4. 删除桌面上的DrJava和命令行的快捷方式

Q: 我如果重新运行安装器会怎么样?

A: 重新下载、安装一遍,完全重复上述过程

Q: 如果我之前在其他位置安装过DrJava会怎么样?

A: 我们建议你删除他然后使用C:\Users\username\algs4这个版本

Q: 我可以使用其他版本的Java 吗?

A: 是的,但你需要自行配置Windows环境变量和DrJava的编译器属性

Q: 我可以使用除了DrJava以外的IDE吗?

A: 是的,你可以使用其他的IDE(比如Eclipse)但你需要自己配置编译器属性,比如classpath

Q: 当我启动Eclipse时,我收到这样一个报错信息“Failed to load JNI shared library”,我该怎么办?

A: 你多半是使用了一个64位的Java和32位的Eclipse。如果你是64位的机器,安装器会自动安装64位的Java,这会替代之前的32位版本的Java。有两种方法解决这个问题:要么将Eclipse升级到64位,要么将C:\Users\username\introcs\java移除,这样的话Windows就会使用之前的32位Java。当然你可以可以在Eclipse.ini中指定使用特定的Java版本

Q: 我要怎么中断一个无限循环?

A: 在DrJava中,直接点击Reset按钮即可或者在菜单里选择Tools->Reset Interactions,如果是在命令行里面的话,使用Ctrl+C

Q: 当使用标准输入时,我要怎么表明输入完成(没有后续数据了)

A: 如果你是从键盘输入的话,使用Ctrl+z表示文件结尾(EOF)

Q: 在Windows中要怎么显示 .java 和 .class 的后缀名?

A: 在很多Windows系统中后缀名都被隐藏了,在这种情况下,这样打开他,选择Start -> My Computer -> Tools -> Folder Options -> View,取消对Hide file extensions for known file types选项的选中状态,确认退出即可

Q: 当我在命令行输入java -versionjavac -version时报错了,我该怎么办?

A: 首先确认这两个文件存在:

C:\Users\username\algs4\java\bin\javac.exe

C:\Users\username\algs4\java\bin\java.exe

如果存在的话,应该是环境变量中PATH的值不对,在命令行中输入下面一句:

C:\Users\username> echo %PATH%

PATH环境变量应该包含C:\Users\username\algs4\java\bin

Q: 当我在命令行中编译或者运行一个引用了教材库的程序时报错了,为什么?

A: 注意要使用javac-algs4java-algs4而不是javac或者java

Q: 在命令行中我应该如何导航到另一个驱动器?

A: 在命令行中,用H:导航到H盘,用cd导航到当前驱动器的其他文件夹

Q: 我该如何学习更多与命令行有关的知识?

A: 微软提供了一个命令行知识库

Q: 我是否可以用Windows PowerShell来替代命令行?

A: PowerShell是一个比命令行更高级的命令行工具,但是,它现在还不支持重定向标准输入

时间: 2024-10-13 10:01:22

在Windows上安装「算法 第四版」组件的相关文章

算法第四版 在Eclipse中调用Algs4库

首先下载Eclipse,我选择的是Eclipse IDE for Java Developers64位版本,下载下来之后解压缩到喜欢的位置然后双击Eclipse.exe启动 然后开始新建项目,File -> New Java Project,项目名随便写,如下图 右键src文件夹,Add -> New Java Class,这里需要注意Name一栏里填写的内容就是类名,这里我写了TestAlgs4,为了测试「算法 第四版」作者给的那个测试样例 代码如下: import edu.princeto

在 Windows 上安装 Hadoop 教程(转)

在 Windows 上安装 Hadoop 教程 一见 2010.1.6 www.hadoopor.com/[email protected] 1. 安装 JDK 不建议只安装 JRE,而是建议直接安装 JDK,因为安装 JDK 时,可以同时安装 JRE. MapReduce 程序的编写和 Hadoop 的编译都依赖于 JDK,光 JRE 是不够的. JRE 下载地址:http://www.java.com/zh_CN/download/manual.jsp JDK 下载地址:http://jav

在 Windows 上安装Rabbit MQ 指南

转载自张善友博客园:http://www.cnblogs.com/shanyou/p/4067250.html rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. RabbitMQ的官方站:http://www.rabbitmq.com/        AMQP(高级消息队列协议) 是一个异步消息传递所使用的应用层协议规范,作为线路层协议,而不是API(

windows上安装mysql5.7

安装前准备: 系统:windows7-x64 MySql:mysql5.7.19-X64-windows压缩包 安装步骤: 在windows上安装mysql有两种方式,一种是安装mysql压缩包,一种是图形化的安装,只要是配置好my.ini配置文件,压缩包安装比图形化更快更简单.这篇文章主要说明mysql压缩包的安装步骤. 一.新建数据库文件存放目录 将mysql压缩包mysql-5.7.19-winx64.zip解压到D:\mysql\下面,在D:\mysql\mysql-5.7.19-win

在windows 上安装bugzilla

在网上找了一些如何在windows 上安装bugzilla的文章,感觉不是太麻烦,就是细节不太清楚,花了几天时间终于在windows 2003上安装好了bugzilla,把我的安装过程详细的写下来,这样大家就不用走弯路了.这篇文章只针对bugzilla 2.18rc3,别的版本我没有试过.另外,我也不懂perl脚本. 一.安装Mysql 1.下载Mysql(http://www.mysql.com/),我下载的是mysql-4.0.15-win.zip,直接安装即可.同时可以下载安装MySQL

Windows上安装多个MySQL实例(转)

在学习和开发过程中有时候会用到多个MySQL数据库,比如Master-Slave集群.分库分表,开发阶段在一台机器上安装多个MySQL实例就显得方便不少. 在 MySQL教程-基础篇-1.1-Windows上安装MySQL 章节有详细讲解在Windows上用压缩包安装MySQL服务器的方法,这里以此为基础讲解在Windows上安装多个MySQL服务器的方法. 第一步:将压缩包分别解压缩到不同的目录下. 我自已在已安装好一个MySQL实例后又额外安装了3个MySQL实例,它们的路径如下: C:\P

windows上安装Anaconda和python的教程详解

一提到数字图像处理编程,可能大多数人就会想到matlab,但matlab也有自身的缺点: 1.不开源,价格贵 2.软件容量大.一般3G以上,高版本甚至达5G以上. 3.只能做研究,不易转化成软件. 因此,我们这里使用Python这个脚本语言来进行数字图像处理. 要使用Python,必须先安装python,一般是2.7版本以上,不管是在windows系统,还是Linux系统,安装都是非常简单的. 要使用python进行各种开发和科学计算,还需要安装对应的包.这和matlab非常相似,只是matla

Windows 上安装 MySQL

一.Windows 上安装 MySQL 相对来说会较为简单,点击链接 https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.11-winx64.zip 下载 zip 包. 二.下载完后,我们将 zip 包解压到相应的目录,这里我将解压后的文件夹放在 C:\web\mysql-8.0.11 下. 三.打开刚刚解压的文件夹 C:\web\mysql-8.0.11 ,在该文件夹下创建 my.ini 配置文件,编辑 my.ini 配置以下基本信息: [

在Windows上安装ROS2

前言:双系统来回切换比较麻烦,虚拟机性能又慢,因此在windows上安装ROS2是极佳的选择,ROS2支持在Win10上安装. 一.创建cmd快捷方式 右键新建快捷方式,输入以下命令: C:\Windows\System32\cmd.exe /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" -arch=amd64 -host_arch=amd64 右