2017-09-29 8 views
8

javax.activationパッケージはJava 9で廃止予定です。 Oracle移行ガイドは、JVM開始時に--add-modules java.activationオプションを使用することを提案しています。Java 9のjavax.activationパッケージの代わりになるものは何ですか?

しかし、これを避けてjavax.activationパッケージのクラスを置き換えてください。これは非推奨であり、将来のJavaバージョンでは削除される予定です。私は、javax.activationのためのいくつかの種類の代替があるはずだと思います。利用可能なものがあれば、それは何ですか?

答えて

8

は、既存のパッケージを探している可能性があります。

JAFのこのスタンドアロンリリースには、完全なモジュールのメタデータが含まれますJDK 9将来のバージョンで使用されるモジュール名 に一致するように、java.activationのJavaプラットフォームのモジュールシステム 自動モジュール名を使用しています。

スタンドアロンAPIはupgradeable modulesの概念を経由して、唯一のモジュラー形式でサポートされています。これらを使用すると、コンパイル時、ビルド時間、または実行時などの任意のフェーズで、後のリリースからそのモジュールのバージョンを使用することができます。このため


現在available versionこのように使用することができる1.2.0ある。

Mavenの

<dependency> 
    <groupId>com.sun.activation</groupId> 
    <artifactId>javax.activation</artifactId> 
    <version>1.2.0</version> 
</dependency> 

のGradle

compile 'com.sun.activation:javax.activation:1.2.0' 

アイビー

<dependency org="com.sun.activation" name="javax.activation" rev="1.2.0" /> 
6

JavaBeansのActiviation Frameworkは、独自のメンテナンスJCPと、自身のダウンロードでJSRとスタンドアロンの技術です。はい、Java SE 9はこれを廃止し、将来のリリースでJava EEと共有されるモジュールと共に削除することを提案していますが、これはスタンドアロンバージョンには影響しません。スタンドアローン版はそのままになります。

<dependency> 
    <groupId>com.sun.activation</groupId> 
    <artifactId>javax.activation</artifactId> 
    <version>1.2.0</version> 
</dependency> 

を、あなたはモジュールを開発しているならば、あなたはrequires java.activationすることができます:あなたはMavenを使用している場合、これは動作するはずです。

+0

されますか? –

2

誰がこのまたがって、私のように来る場合は、私はこの1つを追加する必要が提供さ=範囲で `JavaEEの-api`依存してだから、実際のコマンドラインオプションが--add-moduleないが誤解なく、--add-modules

+0

良いキャッチ、私はちょうど質問でそれを修正しました。 – Nicolai

関連する問題