古いバージョンのNetBeansで作成されたJava Webサービスプロジェクトがあり、何ヶ月もアクセスしていないため、パスとインストールされているライブラリが異なります。
プロジェクトを開こうとすると、[参照の問題を解決する]ダイアログが表示され、2つの参照の問題が一覧表示されます。
"metro" library could not be found
"JAX-WS-ENDORSED" library could not be found
NetBeans7.0を使用したJDK6 Update 25 の新規インストールがあり、Windows7を実行しています。
これを解決するためにどのような手順を実行できますか?私がこれまでに取ったすべてのアプローチが私をどこにも連れて行かなかったので、私はどこから始めるべきかさえ知りません。
注:JAX-WS-ENDORSEDがライブラリリストに表示されないため、削除できません。隠された何かがそれを参照しています。どうすればこれを見つけることができますか?
私はちょうどこの問題に遭遇し、 http://netbeans.org/bugzilla/show_bug.cgi?id=187145 からいくつかの助けを見つけました。どうやら、新しいWebサービスが作成されると、NetbeansはJAX-WS-ENDORSEDライブラリを作成します。したがって、[ファイル]> [新しいファイル]に移動し、[Webサービス]> [Webサービスクライアント]を選択して、ダミー値を入力します(これは使い捨てプロジェクトで実行できます)。その後、このクライアントを削除すると、Netbeansは次のクラスパスエントリを使用してライブラリを作成します。
Java/modules/ext/jaxws22/api/jaxws-api.jar
ide/modules/ext/jaxb/api/jaxb-api.jar
これらは、Netbeansインストールディレクトリに関連しています(OS Xでは、.app内のContents/Resources/Netbeansにあります)。または、上記のエントリを使用して手動でライブラリを作成することもできます。
ライブラリはNetbeansグローバルライブラリリストに追加されるため、これは1回だけ実行する必要があります。
最善の解決策は、project.propertiesファイルを編集し、以下のコードを置き換えることです。
元のプロパティ:endorsed.classpath =\$ {libs.JAX-WS-ENDORSED.classpath}
次のように置き換えます:endorsed.classpath =\$ {lib.JAX-WS 2.2.classpath}
古いバージョンのNetbeansでは、libsの場所にJAX-WS-ENDORSEDライブラリがあります。
LibフォルダにJAX-WS2.2ライブラリを持つ新しいバージョンのNetbeans
** ALL THE BEST **
Netbeansは一連のライブラリを維持します。これは、関連するjarファイルのグループを管理するための便利な方法です。 clickongから始めますツール> ライブラリ。ライブラリマネージャーウィンドウが表示されます。
Jarファイルをダウンロードしている場合は、独自のライブラリを追加するためのオプションが表示されます。探しているライブラリが表示されない場合は、ダウンロードして自分で追加できます。ライブラリがNetbeansに存在するようになったら、プロジェクトエクスプローラウィンドウに移動し、プロジェクトのライブラリタブを右クリックします。 ライブラリの追加を選択すると、ライブラリマネージャで追加したライブラリを追加する機会があります。
それでも必要な場合は、netbeans7でnetbeans6.9プロジェクトを開いたときに同じ状況が発生しました。ライブラリウィンドウを使用して「jaxb-endorsed」(私の場合はjaxbでありjaxwsではありません)参照を解決する方法はありません。
Nbproject /project.propertiesファイルでendorsed.classpathプロパティを見つけました。その目的はまだわかりませんが、このプロパティでjaxb-endorsed.classpathへの参照が正しくないことがわかったため、netbeansを削除して閉じ、再度開きました。参照の問題はなくなりました。
私はすでにJaxb2.2ライブラリをプロジェクトに追加しているので、project.propertiesに加えた変更でうまく機能しています。
お役に立てば幸いです。
同様の問題が発生しました:JAX-WS-ENDORSEDを削除しないでください-反対票を投じるように通知してください。インポートしたプロジェクトに移動する必要がありました>参照の問題を解決するダイアログ>古いNBフォルダーを指している参照をそこから削除します-pic:
次に、William Scottの提案に従って使い捨てのWebサービスを作成し、新しく作成したjarファイルを追加します。
古いスレッド、異なる効果的な解決策...いくつかのプロジェクトをあるシステムから別のシステムに移動したところ、このエラーが発生しました。 NetBeans v7.3 +では、「ツール」>「プラグイン」、「使用可能なプラグイン」に移動し、「SOAP」を検索します。 「SOAPWebサービス」が表示されます。このライブラリをロードすると、JAX-WS-ENDORSEDライブラリが取得されます。 NetBeansを再起動すると、クリーンビルドを取得できるはずです。
このパッケージをロードすると、他の多くのライブラリが導入されます。 IDEを再起動すると、他のパッケージに利用可能なアップデートがあるという通知が表示される場合があります。
次の手順を実行します(私の場合、そのNetBeans6.9.1)
1なぜこれが今現れたのですか?
NetBeanの新しいコピーを使用して他のPCでプロジェクトを開こうとしたため
2どのように問題はどのように見えますか? JAX-WS-ENDORSEDのJarLibが見つかりません
3なぜそもそも必要だったのか、そして何のために使われたのか?同じサーバー/ドメイン(ローカルホストなど)にWebサービスがあるので、ソースのフォルダーからWebサービスを削除しても機能しますが、必要です
4何をする?フォームwsdlでダミーのオンライン無料Webサービスを追加してみてください
のように いくつかのテストWebサービスまたは他のサービスを検索
今何?プロジェクトのものをスキャンするのを待ちます。プロジェクトのライブラリプロパティから再確認するか、プロジェクトプロパティに赤/または参照の問題がないことを確認できます。
だから正確に何が起こったのですか? 注:JAX-WS-ENDORSEDライブラリに自動的に追加されます同じ方法で他の問題も解決できます
プロジェクトを右クリックして、[プロパティ]-> [ライブラリ]に移動することをお勧めします。
JAX-WS-ENDORSEDライブラリを削除し、JAX-WS2.2を使用してみてください
また、メトロを削除して、METRO2.0を追加してみてください
それはあなたの問題を解決するかもしれません。
Webサービスの参照を右クリックして、を選択することもできます。
Webサービス属性の編集
次に、[wsimportオプション]タブで、xendorsedがtrueに設定されているかどうかを確認します。
[〜#〜] update [〜#〜]
NetBeansを閉じてから再度開く必要がある場合は、機能する可能性があります。私は同様の問題を抱えていました、そして私はちょうどそれをしました、そしてそれはうまくいきました。
唯一の違いは、必要ないかもしれませんが、JAXB 2.2ライブラリも追加したことですが、それはコンパイルエラーを解決しようとしていたためです。
私が直す:
同じ問題が発生し、NetBeansプラグインにSOAPWebサービスとRESTfulWebサービスをインストールして修正しました