Как получить доступ к src / main / resources из созданного exe [duplicate]

Я знаю, что это должно звучать глупо ... но редко бывает.

Проверьте, пытаетесь ли вы выполнить php из

**http://localhost/info.php**

, а не из

file:///var/www/info.php

ps> вы можете заметить, что если вы пишете из shell

php info.php 

, то ответьте на код (это означает php-функции) ..

3
задан Bishan 30 December 2014 в 11:26
поделиться

3 ответа

Попробуйте это.

InputStream is = getClass().getClassLoader()
                         .getResourceAsStream("/words.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(is));
4
ответ дан Bishan 21 August 2018 в 02:47
поделиться
  • 1
    Thread.currentThread().getContextClassLoader() может быть лучшим вариантом, как указано здесь: stackoverflow.com/questions/3160691/… – Baderous 30 December 2014 в 11:26
  • 2
    Спасибо за ваш ответ, но это не работает для меня. Все еще не удается найти файл. – Träumerei 30 December 2014 в 11:56
  • 3
    Удалите & quot; / & quot ;, просто: ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); InputStream is = classLoader.getResourceAsStream("words.txt"); – Baderous 30 December 2014 в 12:04

Для лучшей практики и избегайте этих проблем, поместите текстовый файл (words.txt) в папку WEB_INF (это безопасная папка для ресурсов). Затем:

ServletContext context = getContext();
InputStream resourceContent = context.getResourceAsStream("/WEB-INF/words.txt");

Ссылка: https://stackoverflow.com/a/4342095/3728901

0
ответ дан Community 21 August 2018 в 02:47
поделиться
  • 1
    Спасибо за ответ. К сожалению, ваш ответ не работает для меня. – Träumerei 30 December 2014 в 11:57
  • 2
    @dovy. В этом случае вам нужно поддерживать два разных кода (java standalone, web) только из-за проблемы с каталогом. Я думаю, что это не очень хорошая идея. – SUNDONG 13 January 2016 в 08:51
  • 3
    что, если файл находится в папке src/main/resources в отдельном .jar? Невозможно переместить его в папку WEB_INF модуля webapp ... – beluchin 8 September 2016 в 13:45
0
ответ дан Cliff 31 October 2018 в 21:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: