Редактирование снимка Java

Я пытаюсь изменить источник снимка Java. Вот то, что я делаю:

  1. Загрузите демонстрационный проект.

    svn export https://github.com/snapcore/snapcraft/trunk/demos/java-hello-world
    
  2. Создайте снимок, названный java-hello-world.

    cd java-hello-world  
    snapcraft
    
  3. Установите снимок.

    sudo snap install java-hello-world_0_amd64.snap --dangerous
    
  4. Выполните снимок.

    java-hello-world.hello
    

    Вывод Hello World как ожидалось.

Теперь я хочу изменить снимок, таким образом, он печатает "Привет Снимок" вместо "Привет Мира". Вот то, что я делаю:

  1. Править java-hello-world/snap/snapcraft.yaml. Класс изменения к devel и заключение к devmode.

  2. Править java-hello-world/src/oata/HelloWorld.java. Строка изменения 7 к System.out.println("Hello Snap");.

  3. Выполните итерации по снимку.

    snapcraft prime
    sudo snap try --devmode prime/
    

    Вывод Hello World. Я хотел бы иметь вывод Hello Snap здесь.

Что я делаю неправильно: существует две вещи в процессе сборки, которые кажутся подозрительными мне.

  1. При выполнении snapcraft главный это говорит:

    Skipping pull local (already ran)  
    Skipping build local (already ran)  
    Skipping stage local (already ran)  
    Skipping prime local (already ran)  
    Skipping pull wrapper (already ran)  
    Skipping build wrapper (already ran)  
    Skipping stage wrapper (already ran)  
    Skipping prime wrapper (already ran) 
    

    Я предполагаю, что пропуск всех этих шагов также включает чтение пропуска и компиляцию файла java-hello-world/src/oata/HelloWorld.java. Вот почему вывод является все еще тем же после редактирования файла. Как я не могу пропустить тот шаг? В учебном руководстве говорится:

    Примечание: Различные шаги snapcraft: вытяните (загрузите источник для всех частей), сборка, этап (консолидируют установленные файлы всех частей), главный (дистиллируют вниз в просто желаемые файлы), снимок (создают снимок из главного / каталога). Каждый ступает, зависит от предыдущего, который будет завершен".

    Я пытался snapcraft pull вместо prime, но результатом является то же.

  2. При выполнении snapcraft в первый раз, ant дает предупреждение.

    [javac] /home/username/Java/java-hello-world/parts/local/build/build.xml:19: warning: 'includeantruntime' was not set,
    defaulting to build.sysclasspath=last; set to false for repeatable builds
    

    Я не знаю что defaulting to build.sysclasspath=last средства. Так, чтобы могла бы быть проблема. "набор ко лжи для повторяемых сборок" должен быть в порядке, потому что это - то, что предлагает этот ответ.

Как я могу обновить источник снимка после изменения его?Заранее большое спасибо.

3
задан 23 May 2017 в 15:39

1 ответ

  1. Чистят предыдущую сборку

    snapcraft clean
    

    , Но когда у Вас есть большой проект, можно хотеть только для той части

    snapcraft clean local
    
  2. , Восстанавливают снова

    snapcraft
    
2
ответ дан 1 December 2019 в 16:55

Другие вопросы по тегам:

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