Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Ну ни в какую не хочет распаковывать.

Тема в разделе "Разработка плагинов для новичков", создана пользователем xDark, 3 авг 2016.

Статус темы:
Закрыта.
  1. Автор темы
    xDark

    xDark Активный участник Пользователь

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    Здравствуйте форум.
    Недавно столкнулся с проблемой распаковки файлов из Jar архива.
    Так вот ни в какую не хочет, выдает постоянно ошибку при попытке этот самый файл скопировать.
    Код:
         private InputStream getResourceAsStream(String name) {
             return getClass().getClassLoader().getResourceAsStream( name );
         }
        private void extract() {
            File folder = new File(File.separator.concat("plugins").concat(File.separator).concat("icJukeBox").concat(File.separator));
            if (!folder.exists()) {
                this.getLogger().warning("Jar not found! Unpacking...");
                File jar = new File(File.separator.concat("plugins").concat("icJukeBox-v1.6.1.jar"));
                 if (!jar.exists()) {
                     try (InputStream in = getResourceAsStream("icJukeBox-v1.6.1.jar")) {
                         Files.copy(in, jar.toPath());
                         } catch (IOException ioExc) {
                             getLogger().log(Level.SEVERE, "Error while extracting jar file", ioExc);
                         }
                 }
             }
        }
    }
    Ошибка в строчке:
    Код:
                       Files.copy(in, jar.toPath());
    Так вот, как это исправить, или копировать файл как - то по-другому.
    Заранее спасибо.
     
  2. Хостинг MineCraft
    <
  3. Dereku

    Dereku Старожил

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    А сама ошибка то?
     
  4. Автор темы
    xDark

    xDark Активный участник Пользователь

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    Ошибки нет,
    Код:
    The method copy(InputSupplier<? extends InputStream>, File) in the type Files is not applicable for the arguments (InputStream, Path)
    был еще один способ, но при копировании тупо был пустой, кек.
     
  5. Dereku

    Dereku Старожил

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    > The method copy(InputSupplier<? extends InputStream>, File)
    > not applicable for the arguments (InputStream, Path)

    Так же можешь использовать FileUtils.copyInputStreamToFile(InputStream, File)

    Код:
    File file = new File(this.getDataFolder().getAbsolutePath() + ".." + File.separator, "plugin.jar");
    if (!file.exists()) {
        try {
            FileUtils.copyInputStreamToFile(this.getResource("plugin.jar"), file);
        } catch (IOException ex) {
            this.getLogger().log(Level.WARNING, "Failed to copy plugin", ex);
        }
    }
    либо saveResource(String)
     
    Последнее редактирование: 3 авг 2016
  6. Автор темы
    xDark

    xDark Активный участник Пользователь

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    Спасибо.
     
Статус темы:
Закрыта.

Поделиться этой страницей