Не может получить автоматизированный выпуск, работающий с Гудзоном + Мерзавец + Плагин Выпуска Знатока

Это говорит, "не оценивают меня". Например, если Вы хотели использовать список в качестве данных, и не в качестве кода, Вы поместили кавычку перед ним. Например,

(print '(+ 3 4)) печать" (+ 3 4)", тогда как (print (+ 3 4)) печать "7"

13
задан Pascal Thivent 10 December 2009 в 13:27
поделиться

4 ответа

After fiddling around with things a bit more, I tried setting my automated release as a standalone job (i.e., not using the M2 Release Plugin). Instead of having the job set up to "build a maven2 project", I made it a "Build a free-style software project" job. The first thing it does is execute a shell command:

git checkout master

The next step is a Maven invocation, configured thusly:

-e -B release:prepare release:perform

That first shell command is the key; now that I'm actually on a branch, all the changes the release plugin performs get pushed back to the origin repository.

While this technically answers my own question, I'm still curious as to others' experiences with this combination of Hudson + Git + Maven Release plugin.

Thanks

3
ответ дан 2 December 2019 в 01:21
поделиться

Документы здесь сформулированы немного странно, но точны:

Каждое значение в массиве является числом с плавающей запятой между 0,0 и 1,0 и соответствует одному элементу в массиве значений. Каждый элемент массива keyTimes определяет длительность соответствующего значения ключевого кадра как долю от общей длительности анимации. Каждое значение элемента должно быть больше или равно предыдущему значению.

В основном каждое значение указывает, в какой нормализованной точке анимации происходит данный ключевой кадр. Так что если ключевой кадр составляет 25% в анимации, значение будет 0,25. Запутанная часть документов указывает на то, что это длительность, когда на самом деле это нормализованный пункт времени.

-121--3594916-

То, как я смотрю на индексаторы, это (правильно или неправильно!), доступ к чему-либо по индексу должен быть более эффективным, чем доступ к нему каким-либо другим способом, потому что в некотором виде, форме или форме, класс, индексатор которого я использую, хранит некоторую форму индекса , которая позволяет ему быстро искать значения при доступе таким образом.

Классический пример - массив, при обращении к элементу n массива с помощью кода miarray [3] компилятор/интерпретатор знает, насколько велики (по памяти) элементы массива, и может рассматривать их как смещение от начала массива. Можно также "для (int i = 0; i < myarray.length; i++) {если (i = 3) то {.. do stuff}} " (не то, что вы когда-либо хотели бы!), что было бы менее эффективно. Он также показывает, как массив является плохим примером.

Скажем, у вас был класс коллекций, который хранит, umm, DVD, так что:

public class DVDCollection
{
    private Dictionary<string, DVD> store = null;
    private Dictionary<ProductId, string> dvdsByProductId = null;

    public DVDCollection()
    {
        // gets DVD data from somewhere and stores it *by* TITLE in "store"
        // stores a lookup set of DVD ProductId's and names in "dvdsByProductid"
        store = new Dictionary<string, DVD>();
        dvdsByProductId = new Dictionary<ProductId, string>();
    }

    // Get the DVD concerned, using an index, by product Id
    public DVD this[ProductId index]  
    {
       var title = dvdsByProductId[index];
       return store[title];
    }
}

Только мой 2p, но, как я сказал,.. Я всегда считал «индексатор» целесообразным способом получения данных из чего-либо.

-121--1129143-

Отредактировано для исключения устаревшей информации.

См. этот ответ для текущего (нехакического) решения.

5
ответ дан 2 December 2019 в 01:21
поделиться

@meowsqueak: У меня была та же проблема, и я исправил плагин, чтобы добавить переменную с именем «GIT_BRANCH» в среду сборки. Если вы хотите попробовать, модифицированный плагин доступен для загрузки на @github: http://github.com/jberkel/Hudson-GIT-plugin/downloads . Я также связался с автором апстрима, чтобы он включил его в основную ветку. Конечно, это не решает проблему отсоединенной HEAD, но, по крайней мере, ваши сценарии сборки знают, в какой ветке вы находитесь.

0
ответ дан 2 December 2019 в 01:21
поделиться

Если я правильно понимаю, такое поведение является преднамеренным, потому что Найджел не считает, что мавен должен придерживаться SCM. Существует относительно безболезненный обходной кувырок (хотя было бы лучше ничего не обходить). Я использую плагин Hudson M2 Extra Steps и делаю шаг предварительной сборки:

git checkout master || git checkout -b master

git reset --hard origin/master

Это выполняется после того, как git проверил sha-1, но до того, как maven начнет строить. Делая это таким образом, я позволяю мне установить master на все, что проверил плагин git. Затем я использую maven-release-plugin для выполнения релизов, и изменения sCM и развертывание работают нормально.

2
ответ дан 2 December 2019 в 01:21
поделиться
Другие вопросы по тегам:

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