2014-09-22 46 views
0

我得到了我的兩個庫的以下警告:氣餒訪問Eclipse的圖書館

import org.eclipse.ui.internal.Workbench; 

Discouraged acces: The type Workbench is not accessible due to restriction on required library org.eclipse.ui.workbench_3.8.0 

import org.eclipse.jdt.internal.core.PackageFragmentRoot; 

Discouraged acces: The type PackageFragmentRoot is not accessible due to restriction on required library org.eclipse.jdt.core_3.8.1 

什麼都可以這樣做的原因和如何解決這個問題 ?

回答

2

您正在收到這些錯誤,因爲您正在導入標記爲內部的軟件包;

import org.eclipse.ui.**internal**.Workbench

這是一個跡象表明,他們不打算從外部使用,實現發生顯着變化,而不可能導致應用程序失敗的任何通知。如果該功能旨在用於其他功能,則通常會有一個可用的公開API。

您的選擇是;

  • 看看是否有更好的包使用,這是打算供外部使用。
  • 忽略警告並繼續使用它們。

通常我會強烈地鼓勵選項1,甚至不建議選項2,但Eclipse有時會對他們如何定義內部軟件包有些奇怪。我曾經多次被迫使用內部軟件包。

在你的情況下,它看起來像org.eclipse.ui.IWorkbenchorg.eclipse.jdt.core.IPackageFragmentRoot應該是一個更好的選擇。