1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Туториал Удаление каталог(а/ов) перед обновлением клиента в лаунчере

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем lol63, 5 мар 2012.

  1. Автор темы
    lol63

    lol63 Старожил Переводчик

    Баллы:
    153
    Special for kaban1997.
    1) Открываем исходники вашего лаунчера.
    2) Заходим в класс GameUpdater.java
    3) Вставляем после
    public class GameUpdater implements Runnable {
    такой код:
    Код:
      static public boolean deleteDirectory(File path) {
        if( path.exists() ) {
          File[] files = path.listFiles();
          for(int i=0; i<files.length; i++) {
            if(files[i].isDirectory()) {
              deleteDirectory(files[i]);
            }
            else {
              files[i].delete();
            }
          }
        }
        return( path.delete() );
      }
    4) Ищем такие строки
    if(forceUpdate) {
    shouldUpdate = true;
    и вставляем после них:
    Код:
              File workdir = Util.getWorkingDirectory();
              deleteDirectory(new File(workdir,"папка_для_удаления_1"));
              deleteDirectory(new File(workdir,"папка_для_удаления_2"));
              deleteDirectory(new File(workdir,"папка_для_удаления_3"));
              deleteDirectory(new File(workdir,"папка_для_удаления_4"));
              deleteDirectory(new File(workdir,"папка_для_удаления_n"));
    5) Сохраняем, компилируем.
    6) ???
    7) PROFIT!!!
     
    Kela-4D, mgroot, Romzes и 14 другим нравится это.
  2. D_ART

    D_ART Старожил Девелопер Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Artarious
    Красавчик :)
     
    димон нравится это.
  3. Dobrik

    Dobrik Старожил Пользователь

    Баллы:
    123
    Skype:
    dobrik18
    Ну наверно скорей for Dobrik :D
     
    ПриветОтМиднайта и nvidia_hl2 нравится это.
  4. Артемилятор

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

    Баллы:
    88
  5. AleksM

    AleksM Новичок

    Баллы:
    8
    Skype:
    a.l.e.k.s.m.
    Имя в Minecraft:
    AleksM
    можно задать тупой вопрос? а папки для удаления 1234n как их писать, полностью %appdata%\.minecraft\mods или просто папки которые в .minecraft config mods saves?

    UPD: Кажется допёрло, спасибо большое
     
  6. Kerr

    Kerr Активный участник

    Баллы:
    68
    Skype:
    svetlois
    а подскажи плз код для удаления всей папки workdir (%appdata%\.minecraft) целиком, для того что бы не удалять все папки в нутри нее по очереди (как в уже описанном методе)!
     
  7. D_ART

    D_ART Старожил Девелопер Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Artarious
    PHP:
    deleteDirectory(new File(workdir))
     
  8. Kerr

    Kerr Активный участник

    Баллы:
    68
    Skype:
    svetlois
    а где воткнуть эту строчку??? примерно представляю куда но хочу мнение эксперта!
     
  9. wkera

    wkera Старожил Пользователь

    Баллы:
    103
    Если поставить галочку "принудительное обновление" и использовать удаление всей папки, либо просто папки bin, то лаунчер пишет:
    [​IMG]
    Есть выход?
     
  10. Klyan97

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

    Баллы:
    88
    ЧТО!?Может GameUpdater.class а то я явы там ващпе не вижу ок да?
    ______________
    Ой, фигню сморозил :fp:
     
  11. Kerr

    Kerr Активный участник

    Баллы:
    68
    Skype:
    svetlois
    у мня такая же беда если делать полностью по данному туториалу
     
  12. ivanque

    ivanque Guest

    .java - исходный файл. .class - скомпилированный.
     
    D_ART нравится это.
  13. D_ART

    D_ART Старожил Девелопер Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Artarious
    Код:
    File workdir = Util.getWorkingDirectory();
              deleteDirectory(new File(workdir));
     
    димон нравится это.
  14. wkera

    wkera Старожил Пользователь

    Баллы:
    103
    Есть ли возможность удалить папку "natives" в "bin", при этом не затрагивая остальные файлы?
     
  15. D_ART

    D_ART Старожил Девелопер Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Artarious

    Код:
              File workdir = Util.getWorkingDirectory();
              deleteDirectory(new File(workdir,"natives"));
           
     
    zuma2 и димон нравится это.
  16. wkera

    wkera Старожил Пользователь

    Баллы:
    103
    Я имел ввиду папку %appdata%/.minecraft/bin/natives
    Если ставить

    Код:
    (workdir,"bin/natives")
     
    (workdir,"bin,natives")
     
    (workdir,bin,"natives")
    То нечего не получается
     
    Сникерсни нравится это.
  17. D_ART

    D_ART Старожил Девелопер Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Artarious
    А про что ты цитировал!?
     
    димон нравится это.
  18. wkera

    wkera Старожил Пользователь

    Баллы:
    103
    Папка natives находится не в workdir, а в workdir/bin/
    3 метода, которые я писал выше, не подходят для удаления именно папки natives
     
  19. D_ART

    D_ART Старожил Девелопер Пользователь

    Баллы:
    173
    Имя в Minecraft:
    Artarious
    Код:
    (workdir+"bin/natives");
     
    Не?
     
  20. wkera

    wkera Старожил Пользователь

    Баллы:
    103
    Не помогло.
    Возможно ли таким же образом удалить файлы .jar?
     

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