K.Maebashi's BBS

ご自由に書き込んでください。雑談も可。
テスト書き込みの類はテスト用掲示板にどうぞ

[日付順表示] [日付順インデックス] [スレッド順インデックス]


新規投稿 | 開設者ホームページへ戻る | ヘルプ


[1951] コンパイルできない
返信


投稿者:stonehand
2016/07/27 17:22:42

Link:
 ばじめまして、よろしくお願いします。
 このような質問をすると、対象読者ではないのではとお叱りを受けそうですが、
「Webサーバを作りながら学ぶ 基礎からのWebアプリケーション開発入門」を購入し
悪戦苦闘しております。
 始めの一歩、ソースをダウンロードし、TcpServer.javaおよびTcpClient.java等をコンパイルしようとし、

>javac *.java

などとしましたが、エラーが出てしまい先に進めません。
エラーの内容は、(がありませんとか、{がありませんとか等です。

 初歩の初歩、基本的な質問で申し訳ありませんが、コンパイルの手順について詳しく教えていただけますか。よろしくお願い申し上げます。
[ この投稿を含むスレッドを表示] [ この投稿を削除]



[1953] Re:コンパイルできない
返信


投稿者:(ぱ)こと管理人
2016/07/28 00:32:19

Link:
>「Webサーバを作りながら学ぶ 基礎からのWebアプリケーション開発入門」を購入し
>悪戦苦闘しております。

こんにちは。お買い上げいただきありがとうございます。

> 始めの一歩、ソースをダウンロードし、TcpServer.javaおよびTcpClient.java等をコンパイルしようとし、
>
>>javac *.java
>
>などとしましたが、エラーが出てしまい先に進めません。
>エラーの内容は、(がありませんとか、{がありませんとか等です。

本を見ながら手で打ち込んだのならともかく、ダウンロードしたソースで、
「(がありませんとか、{がありませんとか」レベルのコンパイルエラーが出るのは
考えにくいのですが…

・そもそもOSは何ですか? この本はWindowsを想定しているので、
 ソースの文字コードはShift-JIS, 改行はCR LFになっています。
・どこからダウンロードしたファイルですか? ページのURLと
 ファイル名を教えてください。
・javacを実行したディレクトリに入っているファイルの一覧を教えてください。
・エラーメッセージをコピペして、ここに貼ってください。

よろしくお願いいたします。
[ この投稿を含むスレッドを表示] [ この投稿を削除]



[1954] Re:コンパイルできない
返信


投稿者:stonehand
2016/07/28 14:30:44

Link:
お手数をおかけしております。

>・そもそもOSは何ですか? この本はWindowsを想定しているので、
Windows7Pro 64 bit

> ソースの文字コードはShift-JIS, 改行はCR LFになっています。
>・どこからダウンロードしたファイルですか? ページのURLと
> ファイル名を教えてください。
書籍8ページにあります
http://kmaebashi.com/webserver/index.html
より、ダウンロードはこちらから。
./src_20160619.zip

>・javacを実行したディレクトリに入っているファイルの一覧を教えてください。
Chap01ディレクトリの内容
C:\oza\src\chap01>dir /b
C
CSharp
Modoki01
server_send.txt
TcpClient.java
TcpClient.java(Apache向け)
TcpServer.java
TcpServer.txt


>・エラーメッセージをコピペして、ここに貼ってください。
例えば
C:\oza\src\chap01>javac TcpServer.java
TcpServer.java:6: '{' がありません。
        try (ServerSocket server = new ServerSocket(8001);
           ^
TcpServer.java:6: ')' がありません。
        try (ServerSocket server = new ServerSocket(8001);
                         ^
TcpServer.java:8: ';' がありません。
             FileInputStream fis = new FileInputStream("server_send.txt")) {
                                                                         ^
TcpServer.java:27: 'catch' への 'try' がありません。
        } catch (Exception ex) {
          ^
TcpServer.java:27: ')' がありません。
        } catch (Exception ex) {
                          ^
TcpServer.java:27: 文ではありません。
        } catch (Exception ex) {
                ^
TcpServer.java:27: ';' がありません。
        } catch (Exception ex) {
                             ^
TcpServer.java:6: 'try' への 'catch' または 'finally' がありません。
        try (ServerSocket server = new ServerSocket(8001);
        ^
TcpServer.java:31: 構文解析中にファイルの終わりに移りました
}

 ^
エラー 9 個

以上のようですが、よろしくお願いいたします。
[ この投稿を含むスレッドを表示] [ この投稿を削除]



[1955] Re:コンパイルできない
返信


投稿者:(ぱ)こと管理人
2016/07/28 22:16:22

Link:
>例えば
>C:\oza\src\chap01>javac TcpServer.java
>TcpServer.java:6: '{' がありません。
>        try (ServerSocket server = new ServerSocket(8001);

これで見当が付きました。このtryの構文は、Java7から導入された
try-with-resource文です。

http://docs.oracle.com/javase/jp/7/technotes/guides/language/try-with-resources.html

お使いのJavaが、Java6以前のものなのではないでしょうか。
javac -versionで何が表示されますか?

なお、この本の対象はJava8です。本の中に明記した個所があったのでは、
と思い探してみたのですが、あれ? 見当たらない……
[ この投稿を含むスレッドを表示] [ この投稿を削除]



[1956] Re:コンパイルできない
返信


投稿者:stonehand
2016/07/29 08:22:06

Link:
お世話になります。
>お使いのJavaが、Java6以前のものなのではないでしょうか。
>javac -versionで何が表示されますか?

C:\>java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b15, mixed mode)

C:\>javac -version
javac 1.6.0_21

となっています。
よろしく、お願いいたします。
[ この投稿を含むスレッドを表示] [ この投稿を削除]



[1957] 最新版を導入、解決しました
返信


投稿者:stonehand
2016/07/29 09:11:04

Link:
お手数をおかけしました。
ご指摘の通り、最新版を導入し正しく動作いたしました。

C:\>javac -version
javac 1.8.0_101

C:\oza\src\chap01>javac TcpServer.java

C:\oza\src\chap01>java TcpServer
クライアントからの接続を待ちます。

今後とも、よろしくお願いいたします。
[ この投稿を含むスレッドを表示] [ この投稿を削除]