2016-08-31 5 views
3

У меня есть проект с именем SampleProj в eclipse.Как получить текущий путь проекта от eclipse с помощью java

Структура проекта упоминается, как показано ниже:

SampleProj 
    | 
    -- META-INF 
      | 
      -- dbdetails.properties 

В настоящее время я читаю файл, как это:

FileReader reader = new FileReader("C://Workspace//SampleProj/META-INF//dbdetails.properties"); 

Но этот путь является локальной для моей системы рит. Итак, я хочу сделать этот путь общим.

Итак, я пытаюсь сохранить этот путь:

FileReader reader = new FileReader("SampleProj/META-INF//dbdetails.properties"); 

Но я получаю файл не найден исключение.

Как я могу прочитать этот файл из Project. Может кто-нибудь, пожалуйста, помогите мне об этом ...

+0

Вы можете установить рабочий каталог при запуске приложения. Если вы установите его в 'C: // Workspace', ваш код будет работать. – talex

+0

@ ma3stro будет работать, только если «META-INF» включен в проект как ресурс. – talex

ответ

1
  • Перейти к Run/Конфигурации запуска ...
  • Выберите Запуск Конфигурация, что вы хотите использовать
  • Выберите вкладку Аргументы
  • В каталоге раздела Рабочих, нажмите Другие
  • Помещенный C: \ Workspace в текстовом поле
  • Нажмите Применить

SampleProj/META-INF/dbdetails.properties должен работать как путь, так как относительный путь относится к рабочему каталогу пользователя, соответствующему System property user.dir.

+0

это помогло? –

+0

Да, это помогло мне. Спасибо большое Nicolas – dev777

+0

@ dev777 хорошие новости –

2

Вы можете получить с помощью:

String workingDir = System.getProperty("user.dir"); 

Тогда вы можете сделать это следующим образом:

FileReader reader = new FileReader(workingDir +"//SampleProj//META-INF//dbdetails.properties"); 
0

Как фас, как ваше развитие обеспокоен вы можете сделать это, как показано ниже, но как только вы развернуть проект лучше, чтобы добавить файл в путь к классам

String currentDirectory=System.getProperty("user.dir"); 


FileReader reader = new FileReader(currentDirectory+"/SampleProj/META-INF//dbdetails.properties"); 
0

Если вы используете весной веб-MVC использование проекта это samplecode:

String path=session.getServletContext().getRealPath("/ui_resources/images/logo.png"); 
Смежные вопросы