Как передать абсолютный путь к файлу в IFile - PullRequest
0 голосов
/ 01 октября 2019

Надеюсь, у вас все хорошо. Я застрял в какой-то части кода при передаче абсолютного пути к файлу в IFile. Пожалуйста, помогите мне решить эти проблемы. Я использую Xtend в затмении. Но вы также можете предоставить мне ответ в java.

class A{
  def x(){

 - 

val file = new File("D:\\xyz.xml")
   val ifile = file as IFile // Getting error here
   new B().y(ifile) 
  }
}
class B{
 def y(IFile file){

  //do something

 }
}

Я получаю сообщение об ошибке при приведении типа java.io.File невозможно преобразовать в org.eclipse.core.resources.IFile Заранее спасибо.

Я пробовал с этим решением

Преобразовать из абсолютного пути в IFile

Но я не умеюдостичь моего решения. Дайте мне какое-то другое решение для передачи абсолютного пути к IFile.

Также я пробовал другими способами:

class A{
 def x(){
  val file = new File("D:\\xyz.xml")
  val workspace= ResourcesPlugin.getWorkspace();
  val location= Path.fromOSString(file.getAbsolutePath());
  val ifile= workspace.root.getFileForLocation(location)
  new B().y(ifile)
 }
}
class B{
 def y(IFile file){
  //do somthing
 }
}

Затем он показывает какую-то ошибку, как закрытое рабочее пространство Исключение в потоке"main" java.lang.IllegalStateException: рабочая область закрыта. в org.eclipse.core.resources.ResourcesPlugin.getWorkspace (ResourcesPlugin.java:412)

...