NetBeans」タグアーカイブ

Bug 236029

NetBeans 7.4にてJDK8を使用し、MavenのWebアプリケーションを作成しようとしたところエラーが発生したもようで、プロジェクトが作成されない。

表示->IDEのログと進んでいくと以下のエラーが発生していた。

WARNING [org.openide.WizardDescriptor]
java.lang.NullPointerException
    at org.netbeans.modules.maven.j2ee.ui.wizard.BaseWizardIterator.saveSettingsToNbConfiguration(BaseWizardIterator.java:110)
    at org.netbeans.modules.maven.j2ee.ui.wizard.EEWizardIterator.instantiate(EEWizardIterator.java:138)
    at org.openide.loaders.TemplateWizard$InstantiatingIteratorBridge.instantiate(TemplateWizard.java:1046)
    at org.openide.loaders.TemplateWizard.handleInstantiate(TemplateWizard.java:605)
    at org.openide.loaders.TemplateWizard.instantiateNewObjects(TemplateWizard.java:439)
    at org.openide.loaders.TemplateWizardIterImpl.instantiate(TemplateWizardIterImpl.java:248)
    at org.openide.loaders.TemplateWizardIteratorWrapper.instantiate(TemplateWizardIteratorWrapper.java:160)
    at org.openide.WizardDescriptor.callInstantiateOpen(WizardDescriptor.java:1629)
    at org.openide.WizardDescriptor.callInstantiate(WizardDescriptor.java:1570)
    at org.openide.WizardDescriptor.access$2300(WizardDescriptor.java:92)
[catch] at org.openide.WizardDescriptor$Listener$2$1.run(WizardDescriptor.java:2257)
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1432)
    at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2042)

NetBeansのバグだがFIXされているとのこと。

ただし、11/16時点でダウンロードサイトよりダウンロードした日本語のJavaEEには適用されていないっぽい。

(適用方法または適用されているものはこれから調べる。)

->11/17追記

開発版の最新だとうまく動いたのでこれを使う。(Build 201311160002)

 

JDK8バグ?

先日のJDK 8をWindowsにインストールするとレジストリに書き込まれるっぽい問題を避けるために、NetbeansとJDK 8をCentOS(6.4 64bit)にインストールした。起動しようとしたところ下のようなエラーが発生。

java.lang.IllegalArgumentException: committed = 52752384 should be < max = 50331648
    at java.lang.management.MemoryUsage.<init>(MemoryUsage.java:162)
    at sun.management.MemoryImpl.getMemoryUsage0(Native Method)
    at sun.management.MemoryImpl.getNonHeapMemoryUsage(MemoryImpl.java:75)
    at org.netbeans.core.ui.warmup.DiagnosticTask.logParams(DiagnosticTask.java:193)
    at org.netbeans.core.ui.warmup.DiagnosticTask.run(DiagnosticTask.java:82)
[catch] at org.netbeans.core.startup.WarmUpSupport.run(WarmUpSupport.java:98)
    at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1432)
    at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2042)

JDKのバグ??

WarmUpSupportとかいうのが死んだっぽいけどcommittedがmax越えるって設定ミスじゃなさそうだし、まぁ多分JDKもNetbeansも両方EAだし。ハローワールドのレベルだと動いたのでとりあえず放置。

 

 

 

NetBeans IDE 7.4 Beta

twitterを見てたらJDK 8のLambdasが使えるようになったベータ版のNetBeansが出たとのこと。

Preview support for JDK 8 features: Profiles, Lambdas 

早速ダウンロード(すべて版)

インストーラーを次へ次へという感じでデフォルトでインストール

デスクトップにできたアイコンをダブルクリックで起動

a

ぱっとみサンプルプロジェクトとデモには、ラムダのサンプルはなさそう。

 

JDKは同梱されていない(ような)ので今日の時点のアーリーアクセス最新版をダウンロード

注意:既存Javaが不安定になるかも Public JRE のインストールしない方がいい -> リンク

JDKをインストーラーで次へ次へとインストール

Public JRE はインストールせずに残りは次へ次へ

a

 

NetBeansで

実行->プロジェクトの構成を設定->カスタマイズと進み

ライブラリ->プラットフォームの管理->プラットフォームの追加からJDKのインストールパス(C:\Program Files\Java\jdk1.8.0)を指定してJDK8を設定した後に設定したJDKを選択。

b

 Oraleのサイトからクイックスタートのソースをコピペしたが

また「ラムダ式はsource 1.7でサポートしてません。うんぬん」と怒られている。

c

 

実行->プロジェクトの構成を設定->カスタマイズ->ソースからJDK8を選択

c

 

サンプルのRunnable Lambdaは無事に動作。

(ラムダ式になっていない)匿名クラスも「この匿名内部クラスをラムダ式に変換できます。」という気の利いたメッセージがでて、

d

alt+enterで出てくる変換候補を選ぶとラムダ式に変換された。おぉ!

(元)

    // Anonymous Runnable
    Runnable r1 = new Runnable(){

      @Override
      public void run(){
        System.out.println("Hello world one!");
      }
    };

(変換後)

    // Anonymous Runnable
    Runnable r1 = () -> {
        System.out.println("Hello world one!");
            };