OSS紹介

Java

Java最新情報

NRIのOpenStandiaが提供するJava最新情報

Javaの保守サポートサービスの内容はこちら Javaの導入については、こちらのフォームからお問い合わせ下さい OSS全般の事例紹介はこちら

Javaバージョンアップ情報

すべてを見る

<更新日:2017-11-25>

Javaの概要

Java(ジャバ)とはサンマイクロシステムズ社(2010年にオラクル社に吸収合併)により開発されたプログラミング言語、及びその動作環境である Java VM(ジャバ仮想マシン) を指します。
現在の最新バージョンは Java SE 9.0.1(2017年11月現在)です

TOPに戻る

Javaの歴史

1991年

Java は1991年にサンマイクロシステムズ社のJames Goslingが中心となるグリーンプロジェクトチームにより、家電などに組み込むアプリケーション開発の一環として、ハンドヘルドデバイスやデジタルテレビ等のあらゆる機器で動作できることを目標に開発が始まりました。Java のマスコットキャラクター Duke は、ハンドヘルドコントローラ上で動くデモ用のキャラクターとしてデザインされたのが始まりです。
しかし、当時はまだその目標を達成するのは困難であり、方向転換を迫られることになりました。議論を重ねた結果、広がりつつあるインターネットの世界に着目し、インターネットとの親和性を高めた設計に見直すことで、インターネットでの利用を前提とした多くの機能を持つ新しいプログラミング言語 Javaが登場しました。

1995年

995年春の Sun World EXPO で Java の α版(開発中のバージョン) とともにウェブブラウザ上で動作しインターネットで配布可能なアプリケーション「Java アプレット」と対応ブラウザ「Hot Java」が発表されることにより大きく注目され、タイム誌の 1995年 10 Best Productsにも選ばれました。秋には Java の β版(開発中の試用版) が一般に公開されています。

1996年

1996年1月23日、初期の正式バージョンである JDK(Java Development Kit)1.0 がリリースされました。1997年2月19日には国際化対応がなされた JDK 1.1 がリリースされます。

1998年

1998年12月8日、J2SE 1.2 がリリースされます。このバージョンより、用途別にJ2SE (Java 2 Platform, Standard Edition)、J2EE (Java 2 Platform, Enterprise Edition)、J2ME (Java 2 Platform, Micro Edition)とエディションが分けられました。 J2EEではサーバサイドで動作する Java Servlet(Java サーブレット)、Java Server Page(JSP)、EJB(Enterprise JavaBeans)等の技術が導入されました。 Java Servlet や JSP を実行するための Webコンテナ である Apache Tomcat もこの頃に登場します。 Apache Tomcat 自体も Java 言語で書かれています。 J2MEは、携帯電話等に組み込むための仕様であり、ゲームなどの用途に利用されるようになって行きます。

2000年

2000年5月8日、J2SE 1.3 がリリースされます。より高速で動作する HotSpot Java VM(Java仮想マシン)の導入などの機能強化が行われました。 Java アプレットは、起動が遅い、重いというユーザからの評判、Flash などの対抗技術の登場により次第に使われなくなって行き、それに替わりJava Servlet をはじめとするサーバサイドの技術が急速に普及して行きます。

2002年

2002年2月6日、J2SE 1.4 がリリースされます。正規表現の導入、NIO、ロギング、アサーションなどの仕様が追加されました。

2004年

2004年9月30日、J2SE5.0がリリースされました。このバージョンより製品としての名前が 1.x から x .0という形に変更されました。ジェネリクス(総称型)、オートボクシング、列挙型、アノテーションなどの仕様が追加されました。

2006年

2006年12月11日、Java SE 6 がリリースされました。このバージョンより名前から"2"と".0"が削除されます。高速化、スクリプトエンジンの導入など、改善や機能強化がなされました。また2007年にはサンマイクロシステムズ社がウェブサイト OpenJDK を公開、Java SE をオープンソース化しました。

2011年

2011年7月28日、Java SE 7 がリリースされました。invokedynamic の導入、NIO、JDBCのバージョンアップなどの機能強化が行われました。

2014年

2014年3月18日、Java SE 8 がリリースされました。ラムダ式の導入、コレクション API の機能強化、Date-Time パッケージの追加、など多くの機能強化が行われました。

2017年

2017年9月21日、Java SE 9 がリリースされました。Project Jigsaw、jshell の導入、JVM ログの統一、Javadoc の検索機能、など多くの機能強化が行われました。

TOPに戻る

Javaの主な特徴

Javaには、次のような特徴があります。

  • 現在最も開発者の多いプログラム言語であり、導入事例も豊富。
  • インターネット上に公開されている情報が多く、学習がしやすい。
  • 多くの優れたAPサーバ、開発ツール、フレームワーク、ライブラリが利用可能。
  • "Write Once, Run Anywhere" Linux、Windows、macOSなどの様々なプラットフォームで動作する。
  • バイトコードにコンパイルされてから仮想マシン上で動作する。
  • オブジェクト指向言語である。
  • 継承により部品の再利用が可能。
  • ガーベージコレクションによる優れたメモリ管理
  • 例外処理を使用した安全なプログラミングが可能。

次のようなお客様に、Javaの導入をオススメします。

  • ウェブアプリケーション開発を始めたい。
  • 企業向け大規模ウェブアプリケーションを開発したい。
  • 実績のあるフレームワークを使用して開発効率や保守性を高めたい。
  • 豊富なライブラリを使用して開発効率を上げたい。
  • Apache Tomcat、JBossなどの安定した実績のあるAPサーバを利用したい。
  • Linux、Windows、macOSなど、異なるプラットフォームでも利用したい。
  • 技術者を安定的に補充・補強していきたい。
  • eclipse などの優れた開発環境を利用したい。

TOPに戻る

Javaのライセンス

Oracle JDK は Oracle BCL(※)ライセンスです。無料での利用や再配布が可能です。組み込みデバイスでの利用や商用機能を利用する場合は、オラクル社からライセンスを購入する必要があります。
※Oracle Binary Code License Agreement for Java SE and JavaFX Technologies の略。

Open JDK はクラスパス例外(※)付きGPL(※)ライセンスです。ソフトウェアのコピーや配布、ソースコードの公開を原則として、ソースコードの自由な改変も認められています。
※GPL配下にあるJavaのライブラリにリンクしたアプリケーションにGPLライセンスライセンスを適用することを義務付けない例外です。
※GNU General Public Licenseの略。

TOPに戻る

Java言語で書かれた代表的なOSS

APサーバ Apache Tomcat
GlassFish
Wildfly(JBoss)
Jetty
Payara
シングルサインオン OpenAM
Keycloak
フレームワーク Apache Struts
Spring Framework
Seasar2
JBoss Seam
Apache Axis
ユーティリティ Apache log4j
Jackson
開発ツール eclipse
Apache Ant
Apache Maven
テストツール JUnit
ポータルなど Liferay
Aipo
JasperReports Server

TOPに戻る

Java以外のプログラミング言語

Webアプリケーションでよく使用されるその他のプログラミング言語には以下のようなものがあります。

  • PHP
  • Python
  • Perl
  • Ruby
  • JavaScript

TOPに戻る

Javaのダウンロード

Java SE ダウンロード
http://www.oracle.com/technetwork/jp/java/javase/downloads/index.html

OpenStandiaに関する
資料請求・お問い合わせはこちら

  • 資料請求
  • お問い合わせ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

  • OpenStandiaサポート対象オープンソース|50種類以上のOSSのサポートをご提供します。
  • 人気OpenAM
  • 注目MongoDB
  • OpenIDM
  • Corosync
  • Postfix
  • Apache HTTP Server
  • ZABBIX
  • BIND
  • Apache Struts
  • PostgreSQL
  • Pentaho
  • Spring Framework
  • Apache Tomcat
  • Solr
  • Dovecot
  • iBATIS
  • DRBD
  • MySQL
  • JBoss
  • Liferay
  • Ruby on Rails
  • Jaspersoft
  • OpenLDAP
  • Apache log4j
  • Apache Subversion
  • BIND
  • OpenDJ
  • Pacemaker
  • Samba
  • Red Hat Enterprise Linux
  • Nginx
  • sendmail
  • Courier-IMAP
  • Heartbeat
  • Hibernate
  • Hinemos
  • MyBatis
  • MySQL Cluster
  • Apache Axis2
  • Squid
  • OpenSSO
<--!-->