Javaは公式には無料ではありませんが (2006 年 11 月 13 日に偽になりました(以下を参照))、そのライセンスは十分にオープンであるため、最も多様な分野で多数の無料ツールの出現を許可しています。
Java ライセンスのディスカッション
ライセンスナンバー1!
Java ライセンス (Sun Community Sourced License – SCSL) では、次のことが許可されます。
- JRE (基本ライブラリを伴う仮想マシン) のSunサイトからの無償入手
- したがって、デスクトップ コンピュータまたは汎用サーバー、単一用途に特化したマシン (電話、ゲーム コンソールなど) 向けの Java で書かれたアプリケーションを伴う場合、JRE の無料再配布はロイヤルティの対象となります。 …) 私たちが「組み込みソフトウェア」と呼ぶもの。
Java ライセンスでは次のことは許可されていません。
- Java プラットフォームの逆コンパイルと変更
このライセンスでは、Javaテクノロジを無料と見なすことはできません。その一方で、Java で書かれた無料のツール、ソフトウェア、ライブラリを作成することができます。
独立した組織である JCP は、開発作業を統合し、これらのツールの推進を支援するために、これらのツールの標準化を可能にします。
2004 年の初めから、Sun が Java コードをリリースするよう求める多くの声が上がってきました。最初の要求はIBMからであり、その後、エリック・レイモンドなどのフリーソフトウェア界の著名人からの要求が続きました。
2005 年 3 月以来、Sun は Java の新しいライセンスを導入し、オープンソースになることなくオープン性を高めました。
- Java Internal User License (JIUL)、内部導入向け
- Java 配布ライセンス (JDL)。Java を完全に配布できます。
- Java Research License (JRL)、評価および非営利使用向け。このライセンスでは、Javaソース コードを表示することもできます。
さらに、Sun はこのページで Java ( Mustang ) の次期バージョンの開発に貢献することを申し出ています。
以下に示すように、Sun は2006 年中に Java をリリースする予定です。
太陽の政治
Sun のポリシーは、Java の進化に対する制御を維持することを目的としており、これが JVM と Javaコンパイラをオープンソースとして位置付けることを拒否していることを説明しています。
Sun は以前、 Java ベースの Jini テクノロジーを、オープンソースであると主張するライセンスの下に置いています。しかし、これには、特にLinus Torvaldsによって疑問が投げかけられました ( 「Once Upon a Linux 」を参照)。
しかし、2000 年 6 月にNetBeans をオープンソースとして発表した後、JavaOne 2004 カンファレンス中に Java パッケージの要素をオープンソースとして発表した Sun による進化を私たちは目の当たりにしています。
- Java3D
- XMLファイル(XUI)、JDNC (Java デスクトップ ネットワーク コンポーネント)、および JDIC (デスクトップ統合コンポーネント) で完全なグラフィカルインターフェイスを定義できる JFC の拡張機能
- Linux Looking Glass の 3D GUI
一般的に言えば、しばらくの間、Sun はフリー ソフトウェアに対してより強力な取り組みを行っていることがわかります。
- クリーンなLinux ディストリビューション(Java デスクトップ システム) の開始
- OpenOffice.org
- Wikipedia からインスピレーションを得たJavapedia wikiを含むコミュニティ サイトjava.netの立ち上げ。
2005 年初め、Sun はCommon Development and Distribution License (CDDL) と呼ばれる新しい無償ライセンスの創設を発表しました。このライセンスは、Solaris のOpenSolarisバージョンのほか、Java Enterprise System や Java Desktop System など、多数のソフトウェアの公開に使用されます。 Sun のソフトウェア カタログ全体がこのライセンスに基づいてリリースされる可能性があります (つまり、議論されています)。したがって、これには Java プラットフォームが含まれることになります。
2005 年 6 月、Sun は、GlassFish プロジェクトという名前で、Java System Application Server の次期バージョンの開発者バージョンを作成するオープンソースプロジェクトと、その統合バス仕様 Java、JBI の立ち上げを発表しました。
2006 年、Sun は、Java 用のツール、つまり Java Studio Creatorと Java Studio Enterprise を含むすべての開発ツールをリリースすることを決定しました (NetBeans はすでに無料でした)。
さらに、5月16日のJavaOneカンファレンスの基調講演で、Sunの新CEO、ジョナサン・シュワルツ氏はJavaを無料にする意向を示した。
2006 年 11 月 13 日、Sun は Java テクノロジの中核である JDK (JRE – JVM およびライブラリ – および javac コンパイラを含む開発ツール) と Java MEフレームワークを GPL バージョン 2 に基づいてライセンス供与しました。 Java EEの Sun実装(GlassFish) は、すでに無料の CDDL ライセンスの下にありますが、GPL ライセンスも追加されました。したがって、この変更は Java の独自の側面に終止符を打ち、最終的にはフリー ソフトウェアになります。
2007 年 5 月 8 日、Sun は Java がOpenJDKプロジェクトで完全にオープンソースになったと発表しました。
Java の無料実装
Free Software Foundation は、次の 2 つの別々のプロジェクトを通じて、Java の無料実装の要素を作成しようとした最初の企業です。
- GNUクラスパス、Java のコア ライブラリの無料実装
- GCJ、Java コードをコンパイルするための GCC コンパイラーの拡張機能
2005 年5 月、Apache Foundation は、コンパイラ、JVM、およびコア ライブラリを備えた完全な無料の Java環境を作成することを目的とした Harmony プロジェクトの立ち上げを発表しました。このプロジェクトは J2SE との互換性を目指しています。
Java 環境のその他の要素は、無料バージョンに実装されています。
- Kaffe、仮想マシン
- ブラックダウン、仮想マシン
- Jikes、コンパイラ
- Jikes RVM、仮想マシン
- SableVM、仮想マシン
無料のJavaツール
Java 用の無料ツールは基本的に 4 つのカテゴリに分類されます。
- 開発ツール
- サーバー
- 図書館
- 完全なソフトウェア
開発ツール
| 名前 | 現在のバージョン (日付) | 説明 | ライセンス | 外部リンク |
|---|---|---|---|---|
| アリ | 1.6.5 (2005/02/06) | アプリケーションビルダーツール | Apache ソフトウェア ライセンス 2.0 | http://ant.apache.org/ |
| アヴァロン | 4.2 | デザインパターンを利用したコンポーネント開発ツール | Apache ソフトウェア ライセンス | http://avalon.apache.org/index.html |
| 日食 | 3.3 | 開発環境 | 共通公衆利用許諾契約書 1.0 | http://www.eclipse.org/ |
| ジャカルタサボテン | 1.6.1 | JUnit に基づく Web アプリケーション用のテストフレームワーク | Apache ソフトウェア ライセンス | http://jakarta.apache.org/cactus/index.html |
| Java 用 GNU コンパイラ (GCJ) | 4.1.1 (GCC バージョン) | さまざまなプラットフォーム (PC 上の Linux、Alpha、 Itanium 、 PowerPC 、 Athlon 64 、SH-3/4、 SPARC上の Solaris 、PC 上の BSD、 Irix 、 Windows 、MacOS X…) でのネイティブ コンパイルを可能にするコンパイラー。GCC に含まれています。 | LPG | http://gcc.gnu.org/java/ |
| j編集 | 4.2 | Java で書かれたプログラミング指向のテキスト エディター | LPG | http://www.jedit.org/index.php |
| ジークス | 1.21 | コンパイラ | IBMパブリックライセンス | http://www-124.ibm.com/developerworks/oss/jikes/ |
| ジャカルタ JMeter | 2.0.1 | パフォーマンス測定ツール | Apache ソフトウェア ライセンス | http://jakarta.apache.org/jmeter/index.html |
| JSwat | 1.5.4 | グラフィカルデバッガ | LPG | http://www.bluemarsh.com/java/jswat/ |
| JUnit | 3.8.1 | 自動化された単体テストフレームワーク、エクストリーム プログラミング指向 | 共通公衆ライセンス | http://www.junit.org/index.htm |
| コーヒー | 1.0.7 | 仮想マシン | LPG | http://www.kaffe.org/ |
| メイビン | 1.0 (2004/07/13) | アプリケーション統合およびプロジェクト管理ツール | Apache ソフトウェア ライセンス 2.0 | http://maven.apache.org/ |
| NetBeans | 3.6 (2004/03/09) | 開発環境 | サンパブリックライセンス | http://www.netbeans.org/ |
| SandCC | 2.18.2 | オブジェクト指向コンパイラ ジェネレータ | LGPL | http://sablecc.org/ |
| SandVM | 1.1.9 | 仮想マシン | LGPL | http://sablevm.org/ |
| ジャカルタの番犬 | 4.0 | サーブレットおよびJSP用のコード検証ツール | Apache ソフトウェア ライセンス | http://jakarta.apache.org/watchdog/index.html |
| Xドックレット | 1.2.2 | コード生成ツール | Apache ソフトウェア ライセンス | http://xdoclet.sourceforge.net/xdoclet/index.html |
| ジャロピー | 1.3 | 事前定義されたルールに従って Java コードをレイアウトできるツール | BSDライセンス | http://jalopy.sourceforge.net/ |
| チェックスタイル | 4 (2006) | 開発標準監視ツール | LGPL | http://checkstyle.sourceforge.net/ |
サーバー
| 名前 | 現在のバージョン (日付) | 説明 | ライセンス | 外部リンク |
|---|---|---|---|---|
| グラスフィッシュ | 2ベータ版 | 完全な Java EE 5 サーバー (クラスタリングを含む) | CDDL と GPL | http://glassfish.java.net |
| イージービーンズ | 1.0RC1 | 軽量コンテナとEJB3.0サーバー | LGPL | http://www.easybeans.org |
| ジャカルタ トムキャット | 5.5 (2004/03/09) | Webサーバーおよびサーブレットコンテナ、JSP互換 | Apache ソフトウェア ライセンス 2.0 | http://jakarta.apache.org/tomcat/index.html |
| 桟橋 | 5.0 | Webサーバーおよびサーブレットコンテナ、JSP互換 | Apache ソフトウェア ライセンス | http://www.mortbay.org/jetty/index.html |
| ジェイボス | 4.0 | EJB、サーブレット、JSP コンテナおよびサーバー (Tomcat 埋め込み経由)、完全な J2EE 互換性 | LGPL | http://www.jboss.org/index.html |
| ジョナス | 4.8.6 | J2EE互換サーバ | LGPL | http://jonas.objectweb.org/ |
| エンヒドラサーバー | 5.1-15 | XML指向のコンテナとサーブレットサーバー | LGPL | http://enhydra.objectweb.org/ |
| Java Apache Mail Enterprise Server (James) | 2.2.0 | 電子メールおよびニュースサーバー (SMTP、POP3、および NNTP プロトコル) | Apache ソフトウェア ライセンス | http://james.apache.org/ |
| JServ | 1.1.2 | コンテナおよびJSP互換のサーブレットサーバー。 JServ は休止中のプロジェクトであり、もはや進化していません | Apache ソフトウェア ライセンス | http://archive.apache.org/dist/java/ |
| ジェロニモ | 1.0-M2 | JMXを中心とした完全で革新的な J2EE サーバーを作成することを目的として、多くの Apache Java プロジェクトをまとめたサーバー | Apache ソフトウェア ライセンス | http://geronimo.apache.org/ |
| OpenEJB | 0.9.2 | EJBコンテナとサーバー | 詳細: http://www.exolab.org/license.html | http://openejb.exolab.org/ |
ライブラリとフレームワーク
| 名前 | 現在のバージョン (日付) | 説明 | ライセンス | 外部リンク |
|---|---|---|---|---|
| 繭 | 2.1 (2004/03/09) | XMLベースのWeb開発フレームワーク | Apache ソフトウェア ライセンス 2.0 | http://cocoon.apache.org/ |
| SWT | 3.2 | グラフィックライブラリ | Eclipseパブリックライセンス | http://www.eclipse.org/swt/ |
| JDOM | 1.0RC1 | XML解析ライブラリ | 特定の、Apache ソフトウェア ライセンスに近い | http://www.jdom.org/ |
| ザラン | XSL変換エンジン | |||
| クセルセス | XML解析エンジン | |||
| ジャカルタ・ストラッツ | 1.2.2 | Web パブリッシングフレームワーク | Apache ソフトウェア ライセンス | http://struts.apache.org/ |
| JAC | アスペクト指向プログラミング用のライブラリ | |||
| コルト | 科学技術計算用ライブラリ | http://hoschek.home.cern.ch/hoschek/colt/ | ||
| dom4j | XML解析ライブラリ | http://www.dom4j.org/ | ||
| ジェクス | 1.0.2 | ソフトウェアにスプレッドシート機能を追加するためのスプレッドシートとライブラリ | LPG | http://www.eteks.com/jeks/ |
| ビーバー | 0.9.5.3 | XMLマッピング、リレーショナル/オブジェクトマッピングおよび永続ライブラリ、JDO 互換 | BSD ライセンスに近い具体的なもの: http://castor.exolab.org/license.html | http://castor.exolab.org/ |
| OpenJMS | 0.7.6.1 | JMSライブラリ | ||
| タイレックス | 1.0.1 | JTA トランザクション管理ライブラリ、JDBC および JNDI 互換 | 特定の、BSD ライセンスに近い: http://tyrex.sourceforge.net/license.html | http://tyrex.sourceforge.net/ |
| GNU クラスパス | 0.91 | 標準 Java ライブラリの実装 | LPG | http://www.gnu.org/software/classpath/ |
| iText | 1.02b | PDF だけでなく、XML、HTML、RTF も生成できるライブラリ | LGPLとMPL | http://www.lowagie.com/iText/ |
| シュガーキューブ | 4.0.0a5 | 標準の Java スレッドよりも効率的なマルチスレッド処理用のライブラリ | http://homepage.mac.com/jeanferdinandsusini/SugarCubes.html | |
| ジェイド | 7.0 | リアルタイム機能、計測単位や通貨を考慮した科学計算、文字列の高度な処理など、多彩なサービスを提供するユーティリティライブラリ。 | LGPL | http://jade.dautelle.com/ |
| J請負業者 | 0.0.2 | 契約に応じてプログラミングできるライブラリ | Apache ソフトウェア ライセンス | http://jcontractor.sourceforge.net/ |
| Jファイナンス | 0.3.0 | 金融アプリケーション用のライブラリ | LPG | http://www.object-refinery.com/jfinance/ |
| Jワークブック | 0.2.0 | Gnumeric スプレッドシート形式でファイルを読み書きするためのライブラリ | LPG | http://www.object-refinery.com/jworkbook/ |
| J共通 | 0.9.5 | JFreeChart および JFreeReport によって使用されるライブラリ。文字列処理、GUI、日付処理、シリアル化、および XML 処理関数が含まれています | LPG | http://www.jfree.org/jcommon/ |
| Jフリーチャート | 0.9.20 | ヒストグラム、曲線、図を作成できるライブラリ | LPG | http://www.jfree.org/jfreechart/ |
| JFreeReport | 0.8.4.10 | PDF、HTML、CSV、Excel、またはテキスト形式でレポートを生成するためのライブラリ | LGPL | http://www.jfree.org/jfreereport/ |
| ジェイグラフ | 5.0 | フローチャートと図を生成するためのライブラリ | LGPL | http://www.jgraph.com/ |
| ジャンプ | 0.4.1 | 科学計算ライブラリ | BSD | http://jump-math.sourceforge.net/ |
| MX4J | 2.0.1 | JMXライブラリ | Apache ソフトウェア ライセンス | http://mx4j.sourceforge.net/ |
| ジャカルタ バイト コード エンジニアリング ライブラリ (BCEL) | 5.1 | バイトコード操作ライブラリ | Apache ソフトウェア ライセンス | http://jakarta.apache.org/bcel/index.html |
| Jakarta Bean スクリプト フレームワーク (BSF) | 2.3.0-rc1 | さまざまな言語 (Javascript、Tcl、Python、Rexx、XSLT など) を使用したアプリケーションのスクリプト作成を可能にするフレームワーク | Apache ソフトウェア ライセンス | http://jakarta.apache.org/bsf/index.html |
| ジャカルタ エレメント コンストラクション セット (ECS) | 1.4.2 | HTML生成ライブラリ | Apache ソフトウェア ライセンス | http://jakarta.apache.org/ecs/index.html |
| ジャカルタ ハイブマインド | 1.0-rc-1 | SOAフレームワーク | Apache ソフトウェア ライセンス | http://jakarta.apache.org/hivemind/index.html |
| ジャカルタ オロ | 2.0.8 | 正規表現を処理するためのライブラリ。Perl 5、 Awkと互換性のある正規表現も提供します。 | ||
| ジャカルタPOI | 2.5.1 | Microsoftによって作成されたさまざまな形式 (Word、Excel、OLE2 など) のファイルの読み書きを可能にするライブラリ | Apache ソフトウェア ライセンス | http://jakarta.apache.org/poi/index.html |
| ジャカルタ正規表現 | 1.3 | 正規表現管理ライブラリ | Apache ソフトウェア ライセンス | http://jakarta.apache.org/regexp/index.html |
| ジャカルタタペストリー | 3.0 | JSPの代替となるWebフレームワーク | Apache ソフトウェア ライセンス | http://jakarta.apache.org/tapestry/index.html |
| ジャカルタタービン | 2.3 | ウェブフレームワーク | Apache ソフトウェア ライセンス | http://jakarta.apache.org/turbine/index.html |
| ジャカルタ ベロシティ | 1.4 | 独自の言語である Velocity Template Language (VTL) に基づく置換エンジン | Apache ソフトウェア ライセンス | http://jakarta.apache.org/velocity/index.html |
| Log4J | 1.2.13 | アプリケーション実行ログライブラリ。 C++、.net、Perl、PHP、PL/SQL にも同様のプロジェクトが存在することに注意してください。 | Apache ソフトウェア ライセンス | http://logging.apache.org/log4j/docs/index.html |
| 軸] | 1.1 | SOAPライブラリ。 C++でも利用可能 | Apache ソフトウェア ライセンス | http://ws.apache.org/axis/ |
| jネイティブ | 1.3 | JNI を手動で使用せずに C/C++ ライブラリを呼び出す | LGPL | http://jnative.sf.net |
| ジャスパーレポート | 1.2.6 | Itext に基づいて、PDF、HTML、CSV、XML、Excel、またはテキスト形式でレポートを生成するためのライブラリ | LGPL | http://jasperforge.org/sf/projects/jasperreports |
完全なソフトウェア
| 名前 | 現在のバージョン (日付) | 説明 | ライセンス | 外部リンク |
|---|---|---|---|---|
| XWiki | 0.9.840 | Wiki管理ソフトウェア | LPG | http://www.xwiki.org/ |
| アズレウス | 2.5.0.0 | BitTorrentクライアント | LPG | http://azureus.sourceforge.net/ |
| イライラする | 0.3 | 無線 | LPG | http://irate.sourceforge.net/ |
| ジオジェブラ | 2.7 | 数学(幾何学と代数) | LPG | http://www.geogebra.at/ |
| ジオネクスト | 1.51 | 数学(動的幾何学) | LPG | http://www.geonext.de/ |
その他のツール
| 名前 | 現在のバージョン (日付) | 説明 | ライセンス | 外部リンク |
|---|---|---|---|---|
| レーニャ | 1.2 | Apache Cocoonをベースとしたコンテンツ管理システム | Apache ソフトウェア ライセンス 2.0 | http://cocoon.apache.org/lenya/ |
| ジトン | 2.1 | Javaで書かれたPythonインタプリタ | 具体的: http://www.jython.org/license.html | http://www.jython.org/ |
| ビーンシェル | http://www.beanshell.org/ | |||
| アスペクトJ | 1.2 | アスペクト指向プログラミングの拡張機能 | 共通公衆利用許諾契約書 1.0 | http://eclipse.org/aspectj/ |
| ジャカルタルシーン | 1.4 | 検索エンジン | Apache ソフトウェア ライセンス | http://jakarta.apache.org/lucene/docs/index.html |
| ジャカルタ スライド | 2.0 | Webサーバー用リポジトリ、 WebDAV互換 | Apache ソフトウェア ライセンス | http://jakarta.apache.org/slide/index.html |
