javac コマンドの-source, -target オプションのルール変更について



Java SE 5 以前の Java のソース・コードを Java SE 7, Java SE 8 の環境でご利用頂いている皆様に、今後の JDK における仕様変更(予定)のご案内をさしあげます。

※ この情報は 2013 年 4 月 14 日に開発者 (Joseph D. Darcy) からアナウンスされた情報です(ご参照:Changing Sources and Moving Targets: Evolving the javac command line )。また、JEP(JDK Enhancement Proposal) 182 としてリストされている内容です。

今まで、javac のコンパイラ・オプションで “-source”, “-target” オプションを使用し、過去のバージョンで作成した Java のコードを現在の target で指定した Java の実行環境上で動作させる事ができました。

例えば、下記の簡単な AWT で実装したコードをご覧ください。ここでは、Frame の親クラスである Window クラスの Windows#show() メソッドが Java SE 5 で deprecated になっています。

import java.awt.Frame;

public class Test{
    public static void main(String argv[]){
        Frame frame = new Frame();
        frame.setSize(300 , 150);
        frame.show();
    }
}

上記のコードを、JDK 5 以降のバージョンでコンパイルすると下記のワーニングが出力されます。

ここでは、JDK 7 でコンパイルした例を示します。

> javac Test.java
注意:Test.javaは非推奨のAPIを使用またはオーバーライドしています。
注意:詳細は、-Xlint:deprecationオプションを指定して再コンパイルしてください

> javac -Xlint:deprecation Test.java
Test.java:8: 警告: [deprecation] Windowのshow()は非推奨になりました
frame.show();
^
警告1個

この J2SE 1.4 で実装されたコードを Java SE 7 の環境で動作させるためには、コンパイル・オプションに下記の “source”, “target” を指定する(bootclasspathは 1.4.2 の rt.jar を指定)事で Java SE 7 の環境で実行させる事ができました。

> javac -bootclasspath /tmp/rt.jar -source 1.4 -target 1.7 Test.java

今回、JEP 182 で提案された内容は、上記の ”source”, “target” で指定できるバージョンについてのルール変更です。

まず、Java SE 8 で Java SE 5 以前のバージョンが指定された場合に、「deprecated (非推奨) 」であるワーニングメッセージを出力するように変更されています。実際に、Java SE 8 の環境で ”source” に 1.4 を指定した場合の例を下記に示します。下記のように、Java SE 8 からワーニング・メッセージが出力されるようになっています。

> javac -bootclasspath /tmp/rt.jar -source 1.4 -target 1.8 Test.java
警告: [options] ソース値1.4は廃止されていて、今後のリリースで削除される予定です

警告: [options] 廃止されたオプションについての警告を表示しないようにするには、-Xlint:オプションを使用します。
警告2個

そして、Java SE 9 では Java SE 5 以降 以前のオプションを完全に削除するという内容になっております、もっと正確に申し上げるならば、今後の Java のリリースにおいて1プラス3バックのルールが採用されるようになります。

● Java SE 9 リリース時に指定可能な値: 9/1.9, 8/1.8, 7/1.7, 6/1.6
● Java SE 10 リリース時に指定可能な値: 10/1.10 9/1.9, 8/1.8, 7/1.7

この変更を行う理由ですが、Java の 1.0 のリリース以降、クラス・フォーマットは非常に多くのバージョン・アップを重ねており、Java コンパイラのメンテナンス・コストが非常に高まっています。このメンテナンス・コストを軽減するための措置として変更が考えられています。どうぞご理解の程宜しくお願いします。

日本においても、上記の仕様変更によって影響のある環境も少なからずあるかと想定します。現時点でも、Java SE 5 以前のコードを Java SE 8 以降の環境で動作させる事は非推奨となっております。また、Java SE 9 では上記を実現する事もできなくなります。仮に Java SE 5 以前のコードが存在する場合には、お早めに、deprecated なクラスやメソッドを取り除き、Java SE 7, 8 等の最新の環境で正常に動作するように移行をご検討いただければ誠に幸いです。

2014年7月2日 at 12:55 PM 1件のコメント

JavaOne 2014 San Francisco につきまして


JavaOne 2014 ディスカウント・コードのご案内


本日は、日本 Java ユーザ・グループ (JJUG) に所属する方々へ、JavaOne 2014 San Francisco のディスカウント・コードをお知らせいたします。今月 (6 月) 中に JavaOne 2014 San Francisco への参加チケットをご購入頂ける場合、JJUG 会員の皆様には現在の早期割引価格に加えて、さらに追加で $200 OFF でチケットをご購入頂く事が可能です。これは、当日のオンサイト価格に対して $600 OFF の割引になりますので、この機会にどうぞご登録ください。

ディスカウント・コードをご利用されたい場合は、登録時に下記をご入力ください。
※ ディスカウント・コード: DJU4

今年の JavaOne は継続して Java 開発者が必要とする情報をお届けするイベントで、9トラック 400 以上のセッションが用意されております。また、下記ブログでも情報共有されましたが、今年は次期Java EE 8 に関する情報も提供される事と想定しています。
Java EE 8 のプランニング

JavaOne には皆様が欲しい情報が必ずあると思います。是非、今年の JavaOne への参加をご検討ください。

また、これに併せて、JavaOne 2014 San Francisco のオフィシャルツアーにつきましてご案内を差し上げます。

JavaOne 2014 オフィシャルツアーのご案内



【JavaOne 2014 San Francisco オフィシャルツアーお申し込みページ】

 
★ お申込締切:2014年 7月 31日(木) 17時 ★

ご旅行代金:198,000 円(2名様1室利用時*1の1名様あたり料金)
※ 1室1名様ご利用も可能です
(追加ご旅行代金 上記および135,000円、合計 333,000円)
上記旅行代金には日本から米国までの航空運賃は含まれておりません。
詳細は上記サイトをご覧ください。

本ツアーは、ホテル代金、空港送迎、JTB 特設デスク(日本人)ご利用等をご利用頂く事ができ、2名1室でもご利用頂ける、JavaOne 参加者向け特別パッケージでございます。宿泊先の The Westing St. Francis はJavaOne 会場である、ヒルトン・ホテル、ホテル・ニッコー等から目と鼻の先にある、安全で好立地な場所に存在します。

Expedia によると
本日時点で、JavaOne 開催期間中のユニオンスクエア周辺の9/27-10/3までのホテル代金の平均は1泊 ¥45,940 でございました。
3つ星ホテル:¥51,968
4つ星ホテル:¥67,360
5つ星ホテル:¥75,237

一方で、本パッケージをご利用頂いた場合2名1室の場合、¥39,600 一人の場合、¥66,600となります。(The Westing St. Francis:4つ星ホテル)

JavaOne の会場からとても近く好立地で、安全な場所に宿泊されたい場合、是非、本パッケージのご利用をご検討頂ければ幸いです。(空港送迎の他、現地で日本人によるサポートもございます。)本パッケージは会社の同僚、もしくは Java のコミュニティのメンバーと相部屋でご利用されたい場合など柔軟にご利用頂けます。どうぞご活用ください。
※ 本パッケージに関する詳しいお問い合わせは上記 JTB までお問い合わせください。より多くの皆様のご参加を心より楽しみに致しております。

PS.
本パッケージをご利用頂くか否かで、私には一切見入りはございませんのでどうぞご理解ください。参加者の皆様に、より「好立地で安全な場所」を提供できないかと、今年初めて JavaOne 参加者の皆様向けに企画した内容です。どなたからもご利用頂けなかった場合は来年はないかもしれませんが、フィードバック等に応じて検討させて頂きたいと思いますので、フィードバックも頂ければ幸いです。

2014年6月5日 at 5:04 PM 1件のコメント

Java Day Tokyo 2014 終了の御礼


2014年 5/22(木)に今年最大の Java イベント Java Day Tokyo 2014 が無事終了しました。当日は、日本全国から多くの Java 開発者の皆様にお越し頂き誠にありがとうございました。昨年を上回る来場者数を記録し、ご参加頂いた全ての皆様に心より御礼申し上げます。

今年の Java Day Tokyo のテーマは、日本オラクル発の「Java SE 8」ローンチ・イベントでした。このイベントに併せて、US から Lambda の開発者を始めとして、多くのエンジニアに来日してもらい、丸一日 Java SE 8 関連セッションで様々な情報を入手して頂いたのではないでしょうか。多くの Java 開発者の皆様にとって今年のイベントが Java SE 8 採用に向けた出発点になって頂ければ誠に幸いです。

また本イベントに併せて、まだ完全ではないながらも日本語版 Java SE 8 API ドキュメントを公開できました。残りの部分につきましては随時対応をしてまいりますので、どうぞご安心頂くと共にご活用ください。

● 日本語版:Java Platform Standard Edition 8 ドキュメント
● OTN の「Java SE API & ドキュメント」サイトから:

● アーカイブ(zip)版も下記から入手可能です。

その他、JDK 8 のリリースノート等も一部日本語化を行いました。
下記リンクも併せてご覧ください。

● JDK 8の新機能
● JDK 8の既知の問題
● JDK 8およびJRE 8でサポートされるロケール
● Oracle JDK 8およびJRE 8認定システムの構成
● Java Platform, Standard Edition 8の名前とバージョン
● Java Mission Control 5.3リリース・ノート
● JDK 8採用ガイド
● JDK 8の互換性ガイド(翻訳中)

最後に、
今年、ご参加頂いた皆様、本当にありがとうございました。来年また Java 開発者の皆様と Java のお祭りができる事を心より楽しみにしております。

私の発表資料「Java SE 8時代のJava EE 7アプリケーション開発」も下記に公開しております。どうぞご参照ください。

また、上記発表中でご覧頂いた WebSocket のデモはここに公開しています。GlassFish v4.0.1 b5 以上でご確認頂けます。また、ソースコードはコチラからご覧頂けます

PS.
今年の夕方のイベントはグダグダになってすいませんでした。来年の夕方のイベントは、今一度仕切り直して、また楽しい夜のイベントを企画し実施したいと思っております。

2014年5月27日 at 2:54 PM コメントする

Java Day Tech Night の詳細な内容につきまして



Java Day Tokyo 2014 は早いものでもうあと3日に迫りました。すでに何名かの講演者が来日しておりイベントの準備もいよいよ最終段階に入ってきています。

さて、今日は「Java Day Tech Night」の詳細についてご案内します。

今年の「Java Day Tech Night」は、本場サンフランシスコの JavaOne さながらの BoF として「Ask The Experts」を行いたいと思います。本場 JavaOne では 「Meet the Spec Lead」という BoF セッションがあり、参加者が会場で自ら直接講演者に対して質問を投げかける事ができます。

今回は、その本場 JavaOne の「Meet the Spec Lead」を模して、今年来日した4名の講演者に対して、「Ask The Experts」セッションとして、会場にいらっしゃる皆様から直接ご質問やご意見をお伺いする場を設けたいと考えています。
※ 過去、お昼の時間帯に実施しておりましたが、人気セッションだったため、今年は規模と時間を拡大して、もっと多くの方に ご参加頂き、講演者と直接交流を持って頂ければと考えております。

また、本イベントの UStream 配信も正式に決定しました。関東近郊以外の皆様、もしくはお仕事でどうしてもお越し頂く事ができなかった皆様には、是非 UStream でご覧頂けないでしょうか。
※1: UStream を視聴頂くためには登録が必要です。登録用の URL は別途ご案内致します。
※2: 本 Stream 配信は録画はいたしません。リアルタイムでのみご視聴いただけます。

Twitter のハッシュタグ:#jdt2014_A5

Experts :
* Stuart Marks (Lambda 式の開発者)
* Simon Ritter (Java SE/SE Embedded/JavaFX のエバンジェリスト)
* Stephen Chin (JavaOne の Chair)
* Reza Rahman(Java EE のエバンジェリスト)

通訳:
David Buck

皆様から頂くご質問、ご意見のカテゴリとして下記を考えております。

* オラクルの Java 活動に関する質問、ご意見
 例:世界のコミュニティ活動について教えて欲しい
   日本のコミュニティについてもっと連携して欲しい
   日本のコミュニティに対してヘルプして欲しい。
   Adopt-A-JSR はどうしたら参加できるの?
   世界の何カ国にどの位の頻度で巡っているの?
  提案:
   もっと、海外のエンジニアに日本にきて欲しい。
   ***の部分をもっと改善して欲しい。

* Lambda 式について
 スペックを含む技術的なご質問、ご意見など
 セッション中で疑問に思った事。

* JavaSE/JavaFX/Java Embedded に関連する内容(Lambda 式以外)
 Lambda に関する以外の全てのご質問
 スペックを含む技術的なご質問、ご意見など

* Java EE に関して
 スペックを含む技術的なご質問、ご意見など
 次の Java EE 8 はこのような機能を入れて欲しい。
 
などなど。

皆様がお持ちの疑問や課題、ご意見等を是非我々に直接お届けください。
皆様の貴重なご意見、ご質問が「次の Java をさらに良くするため」の、きっかけになるかも知れません。多くの皆様のご参加とご意見・ご質問を心よりお待ち致しております。

ご意見・質問頂ける方へのご案内:
当日開場の両サイドに、ご質問者用のマイクを2本用意しています。ご質問を頂ける方は、直接マイクが置いてある場所までお越し頂けないでしょうか。またセッションが始まるとすぐに、1番目のカテゴリ「オラクルの Java 活動に関する質問、ご意見」に入りたいと思います。本プログラムが正式に始まる前から両サイドのマイクにお並び頂ければ誠に幸いです。

開場のマイクの置き場所について

2014年5月19日 at 6:32 PM コメントする

Java Day Tokyo で「教育版 LEGO Mindstorms EV 3」の限定3台販売決定


先日、leJOS + NetBeans 8.0 (Maven) + Java SE Embedded (7 or 8) で LEGO Mindstorms EV3のアプリケーション開発 のエントリで LEGO Mindstorms を Java で制御するためのエントリを記述しましたが、このエントリの中で 「教育版レゴ マインドストームEV3」 をお借し頂いた、(株)アフレルさんが Java Day Tokyo 2014 で協賛する事が正式に決まりました。そこで、Java Day Tokyo の当日、アフレルさんの展示ブースで生の「教育版レゴ マインドストームEV3」をご覧頂く事ができます。皆様、どうぞ楽しみにしてください。


また、これを記念してアフレルさんの展示ブースで、「会場販売特典付き」の『教育版EV3 Javaプログラミングセット』を限定3台販売する事も決まりました。

『教育版EV3 Javaプログラミングセット』+Java Day Tokyo 2014 会場販売特典
  価格:51,600円(55,728円)

 ◆教育版EV3 Javaプログラミングセット:51,600円
  教育版レゴマインドストームEV3
  DCアダプター
  無線LANドングル
  USB延長ケーブル
  EV3 Javaプログラミングガイド

 ◆JavaDayTokyo2014会場特典
  EV3インタラクティブサーボモーターM:3,200円相当
  非売品レゴセット×2種:プライスレス

ここでしか手に入らない、非売品レゴセット(内容は当日のお楽しみ)を含む、追加モータも頂けるので、まさに Java Day Tokyo だけのオリジナル特別限定販売になります。
また、現時点では Java で LEGO Mindstorms を制御するための日本語情報が少ないため、最初から英語で情報収集するのはちょっとという方には、付属の「Javaプログラミングセット」の日本語資料は、絵付きで丁寧に説明されているのでとても有用かと思います。

ご購入頂いた商品は、当日お持ち帰りいただく事も可能ですので、Java Day Tokyo の余韻がさめない内から LEGO Mindstorms をお楽しみ頂く事も可能です。また、大きい商品ですので、会場から郵送でお送りいただく事も可能です。(特典のレゴだけお持ち帰りいただく事も可能です!)
ここでしかご購入頂けない、限定 3 セットの『教育版EV3 Javaプログラミングセット』をご購入されたい方は、是非アフレルさんの展示ブースへお早めに御立ちよりください。

※ 当日、Java Store では、Java Day Tokyo 2014 オリジナル・ケース付き “Raspberry PI” を、こちらも限定 20 セットの販売を予定(¥7,500位)していますが、Raspberry PI と LEGO Mindstorms の販売場所は異なりますので、どうぞご注意ください。

2014年5月9日 at 4:20 PM コメントする

Java SE 8 & IoT ハンズオンのご紹介


今日は私、寺田が企画する Java ハンズオンセミナーを2つご紹介します。このハンズオンは、Java Day Tokyo 2014 に併せて来日するエンジニアと共に実施します。
実施内容は、午前 : Java SE 8 Lambda と午後: IoT に分けて2回実施し、各回とも先着 50 名で募集します。Lambda の開発者自らがお送りする Lambda 式のハンズオンの他、Raspberry Pi のハンズオンは、2人1組に Raspberry Pi を貸し出し、これを使った創作物を作って頂きます。とても面白い内容になると思いますので、ご興味のある方はどうぞお早めにご登録の程宜しくお願いします。

日時: 2014 年 5 月 23 日 (金)
場所:オラクル青山センター

Java SE 8 Lambda ハンズオンの参加ご登録
実施時間:AM 10:00 – 12:00

Internet-of-Things ハッカー・スペース !!の参加ご登録
実施時間:14:00 – 16:00

当日は、逐次通訳を行いフォローします。
皆様のご参加を心より楽しみに致しております。

2014年5月7日 at 12:00 PM コメントする

【若い方向け】Java Fan Meeting 2014 のご案内



今日は、若い方(20-30歳)向けの Java イベントのご案内を差し上げます。

5月22日(木)に「Java Day Tokyo 2014」を開催しますが、これに先駆けて、「Java Fan Meeting 2014」を5月16日(金)に開催します。

「Java Fan Meeting 2014」の登録サイト

https://fansfans.jp/campaigns/detail/1332

※ 本イベントへの参加は抽選による受付となります。
 また、本イベントは「ブログ」「Twitter」「Facebook」のうち
 1つ以上をお持ちの方が対象になります。
 応募時のアンケートに必ずご記入ください。

本イベントの趣旨は、若い Java エンジニアの方々と交流を持つ事ですので、若い方を優先とさせて頂きたいと思います。20 – 30代(学生、社会人何れも可)の若手の方の中で、Java に関する情報発信を行っている方、これから情報発信を行いたいと考えている方は是非、お気軽にご登録頂けないでしょうか。

また、JJUG 会員の皆様(ベテランの皆様)の身近にいらっしゃる新人や若手のエンジニアで、これから Java に関する情報発信をしたいと考えている方、新人 Javaエンジニアをご存知な方は是非、本情報をご案内頂けないでしょうか。

参加者には「Java Day Tokyo 2014」の見どころをいち早く紹介します。また、プログラミングロボット教材「教育版レゴ®マインドストー ム」や、子供向け Java教育のためのゲーム開発ツール「Greenfoot」を使った小中学生向けJava教育の取り組みについてもご紹介します。

イベントの最後には軽食と飲物をご用意しておりますので、どうぞお楽しみください。是非奮ってのご応募、お待ちしております!

————————————————
【イベント概要】
■タイトル:「Java Fan Meeting 2014」
■日時:2014年5月16日(金)19:00開場 19:30開始~21:00終了を予定
■会場:日本オラクル株式会社 本社
■住所:東京都港区北青山2-5-8 オラクル青山センター (13階の受付にお越しください)
■地図(URL):http://www.oracle.com/jp/corporate/branch/aoyama-078891-ja.html

■交通案内:地下鉄銀座線 外苑前駅 4B出口より接続 
      地下鉄銀座線・半蔵門線・大江戸線 青山一丁目駅より 徒歩9分
      地下鉄銀座線・半蔵門線・千代田線 表参道駅より 徒歩10分

■参加費用:無料(ソーシャルメディアアカウントをお持ちの方が応募対象になります。)
■募集定員:20名

■参加条件:
※ブログをお持ちの方はイベント内容についての率直なご感想を【2週間程度】で
 ご自身のブログに1記事以上書いていただける方、また当日の様子をTwitterやFacebookで
 投稿してくれる方を募集しています。

 ・ブログ記事について:
  【日本オラクル】のイベントに参加したということが読者にわかるように記載してください。
  (表記の仕方は自由)
  (例)【日本オラクル】のイベントに参加しました。

■注意事項:
※当落にかかわらず、5月9日(金)までにメールにてご連絡いたします。
※当日はお飲み物と軽食をご用意しております。
※当日は、メディア用の撮影が入る場合がございます。予めご了承ください。

※本イベントの注意事項については、Fans:Fansキャンペーンポリシーページをご参照ください。
 http://fansfans.jp/policy/

【主催】 日本オラクル株式会社

2014年4月30日 at 6:45 PM コメントする

過去の投稿


ご注意

このエントリは個人の見解であり、所属する会社の公式見解ではありません

JavaOne

カレンダー

2014年9月
« 7月    
1234567
891011121314
15161718192021
22232425262728
2930  

カテゴリー

Twitter

  • この少年のスピーチはとても素晴らしかった。彼の中で脳内革命がおこり、成果が出るまで色々な葛藤をして結果をだしたんだろう。彼は恐らく本質が何なのかが分かっているのだろうし、この結果を元にさらなる夢を持っている。素晴らしい。 fb.me/2n8U84clf 20 hours ago
  • JPOUG> SET EVENTS 20140907 | Japan Oracle User Group (JPOUG) fb.me/1iiGmrowJ 1 day ago
  • 川向さんや、記事の中にも出てくるマーケの方がいなければ、実現できていなかっただろうなぁ。皆様に感謝。 fb.me/38mNd12Mm 1 day ago
  • へぇ。今日は、因島でこんなのやるんだ。 rurubu.com/season/summer/… fb.me/6I8eLmlaC 3 days ago
  • ミーティング終了。ありがとうございました。 3 days ago

clustermap

ブログ統計情報

  • 533,755 hits

Feeds


フォロー

新しい投稿をメールで受信しましょう。

現在3,458人フォロワーがいます。