Как я передаю переменную среды Make-файлу Netbeans на Ubuntu?

Я использую Netbeans на Linux (Ubuntu 9.04) для разрабатывания проекта C.

Как я передаю в переменной среды, таким образом, это, это видимо к Make-файлу?

Если я делаю нормальное export MYVAR="xyz" и затем выполненный make из командной строки это хорошо работает, конечно.

Но Netbeans не делает, кажется, использует .bashrc среда, поэтому если я нажимаю "сборку" в Netbeans, сделать сбоях.

Интересно, проблема, кажется, не происходит на MacOSX - я добавил переменную к ~/.MacOSX/environment.plist, и то значение видимо к Netbeans.

Я нашел это сообщение, которое предложило изменить ~/netbeans-6.8/etc/netbeans.conf. Я попробовал это путем добавления -J-DMYVAR=xyz в конец netbeans_default_options, т.е.:

netbeans_default_options="-J-client -J-Xverify:none -J-Xss2m -J-Xms32m -J-XX:PermSize=32m -J-XX:MaxPermSize=200m -J-Dapple.laf.useScreenMenuBar=true -J-Dsun.java2d.noddraw=true -J-DMYVAR=xyz"

Но это, казалось, не работало.

5
задан Cœur 4 March 2017 в 10:02
поделиться

1 ответ

Сказка из личного опыта. Извинения за продолжительность.

Несколько лет назад наша группа разработчиков пыталась установить «правильные» измеримые цели для отдельных людей и руководителей команд. Эксперимент длился всего один год, потому что жесткие показатели не очень хорошо работали для отдельных целей (некоторые ссылки и дальнейшее обсуждение см. в моем вопросе по теме ).

Обратите внимание, что я был руководителем команды и участвовал в планировании всего этого с моим техническим начальником и другими руководителями команды, поэтому цели не были чем-то продиктованы с самого начала бесхитростным высшим руководством - в то время, когда мы действительно хотели, чтобы они работали. Стоит также отметить, что бонусная структура непреднамеренно поощряла конкуренцию между застройщиками. Вот мои наблюдения о том, что мы пытались.

Проблемы, с которыми сталкиваются клиенты

В нашем случае мы рассчитывали перебои в предоставлении услуг клиентам. В изделии, обернутом сжатием, это может быть количество ошибок, о которых сообщают клиенты.

Преимущества: Это была единственная реальная мера, которая была видна высшему руководству. Он также является наиболее объективным, поскольку он измеряется вне группы по вопросам развития.

Недостатки: Было не так много отключений - всего около одного на разработчика в течение всего года, - что означало, что невыполнение или превышение цели было вопросом «возлагать вину» за несколько отключений, которые действительно произошли в каждой команде. Это привело к плохому чувству и потере морального духа.

Объем выполненной работы

Преимущества: Это была единственная положительная мера. Все остальное было «мы замечаем, когда случаются плохие вещи», что деморализовало. Его включение также было необходимо, потому что без него застройщик, который не делал ничего весь год, превысил бы все остальные цели, что явно не отвечало бы интересам компании. Измерение объёма проделанной работы проверяло естественный оптимизм разработчиков при оценке размера задания, что было полезно.

Недостатки: Показатель «выполненной работы» был основан на оценках, предоставленных самими разработчиками (как правило, хорошая вещь), но превращение его в часть их целей стимулировало игры системы завышать оценки. У нас не было другой жизнеспособной меры работы: я думаю, что единственный возможный ценный способ измерения производительности - «влияние на результат компании», но большинство разработчиков настолько отстранены от прямых продаж, что это редко практично на индивидуальном уровне.

Дефекты, обнаруженные в новом производственном коде

Мы измерили дефекты , внедренные в новый производственный код в течение года, поскольку было сочтено, что ошибки предыдущих лет не должны учитываться в целях этого года. Дефекты, выявленные внутренними группами по качеству, были включены в подсчет, даже если они не влияли на клиентов.

Преимущества: Удивительно мало.Временной промежуток между введением дефекта и его обнаружением означал, что на самом деле не было механизма немедленной обратной связи для улучшения качества кода. Макротренды на уровне команды оказались более полезными.

Недостатки: Был усилен акцент на негативе, поскольку эта цель приводилась только тогда, когда обнаруживался дефект, и нам требовался кто-то, кто виноват в этом. Разработчики неохотно фиксировали обнаруженные ими дефекты, а простой подсчет означал, что мелкие ошибки были так же плохи, как и серьёзные проблемы. Поскольку количество дефектов на одного человека все еще было довольно низким, количество мелких и серьезных дефектов не было ровным, как это могло бы быть в случае с более крупной выборкой. Старые дефекты не были включены, поэтому репутация группы по качеству кода (на основе всех обнаруженных ошибок) не всегда соответствовала измеримому введенному количеству в этом году.

Своевременность реализации проекта

Мы измерили своевременность как процент работ, поставленных внутренним группам по обеспечению качества к указанному сроку.

Преимущества: В отличие от подсчета дефектов, это была мера, которая находилась под непосредственным непосредственным контролем разработчиков, так как они эффективно решали, когда работа была завершена. Наличие цели сосредоточило ум на выполнении задач. Это помогло команде выполнить реалистичный объем работы и улучшить восприятие внутренними клиентами способности группы разработчиков выполнять обещания.

Недостатки: В качестве единственной цели, находящейся непосредственно под контролем разработчиков, она была максимизирована за счет качества кода: в день крайнего срока, учитывая выбор между тем, что задача завершена, или дальнейшим тестированием, чтобы повысить уверенность в ее качестве, разработчик решил бы отметить ее полной и надеяться, что любые возникающие ошибки никогда не выйдут на поверхность.

Жалобы от внутренних клиентов

Чтобы определить, насколько хорошо разработчики общались с внутренними клиентами во время разработки и последующей поддержки их программного обеспечения, мы решили, что количество жалоб, полученных на каждого человека, будет зафиксировано. Жалобы будут подтверждены руководителем во избежание возможной мстительности.

Преимущества: Я ничего не помню. Измеренный на достаточно большом групповом уровне, он становится более полезным показателем удовлетворенности клиентов.

Недостатки: Не только крайне негативная, но и субъективная мера. Как и в случае с другими целями, числа для каждого отдельного человека были около нулевой отметки, что означало, что один комментарий о ком-либо может означать разницу между «бесконечно превышенным» и «не выполненным».

Общие замечания

Бюрократия: Несмотря на то, что наши инструменты управления задачами содержали большую часть данных для этих показателей, все еще было достаточно много ручных усилий, чтобы сопоставить все это. Время, потраченное на получение всех цифр, не было приятным, как правило, было сосредоточено на негативных аспектах нашей работы и, возможно, даже не было восстановлено за счет повышения производительности.

Моральный дух: В отношении мер, в которых людей обвиняли в проблемах, не только те, у кого были «плохие» баллы, чувствовали себя демотивированными, но и те, у кого были «хорошие» баллы, поскольку им не нравилась потеря боевого духа команды, и иногда они чувствовали, что их ранжируют выше не потому, что они были лучше, а потому, что им повезло.

Резюме

Что мы узнали из эпизода? В более поздние годы мы пытались повторно использовать некоторые идеи, но в «более мягком» пути, где было меньше акцента на индивидуальную вину и больше на улучшение команды.

  • Невозможно определить цели для отдельных разработчиков, которые объективно поддаются измерению, повышают ценность компании и не могут быть подвергнуты азартным играм, поэтому не стоит пытаться.
  • Проблемы и дефекты клиентов могут быть учтены на более широком уровне команды, если местоположение дефекта однозначно является обязанностью этой команды - то есть вам никогда не придется играть в «игру вины».
  • Как только вы измеряете дефекты только на уровне ответственности за модуль кода, вы можете (и должны) измерять старые ошибки, а также новые, так как в интересах этой группы устранить все дефекты.
  • Измерение количества дефектов на уровне группы увеличивает размер выборки для каждой группы, и поэтому аномалии между незначительными и тяжелыми дефектами сглаживаются, и простое измерение «количества ошибок» может означать что-то, например, чтобы увидеть, улучшается ли вы месяц к месяцу.
  • Включите то, что заботит высшее руководство, потому что держать их счастливыми - это ваша главная цель как группы развития. В нашем случае это были видимые клиентам перебои, поэтому, даже если мера иногда является произвольной или, казалось бы, несправедливой, если это то, что боссы измеряют, то вы также должны обратить внимание.
  • Верхнему руководству не нужно видеть метрики, которых у него нет в собственных целях. Это путь, что избегает соблазна обвинять людей в ошибках.
  • Оценка своевременности осуществления проекта изменила поведение разработчиков и сосредоточила внимание на выполнении задач. Это улучшило оценку и позволило группе дать реалистичные обещания. Если бы было легко собрать информацию о своевременности, я бы подумал использовать ее снова на уровне команды, чтобы измерить улучшение с течением времени.

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

-121--1319458-

Изменить:

Этот ответ, возможно, недействителен для ароматов Ubuntu на основе Unity.


Проблема на самом деле не имеет ничего общего с NetBeans - она связана с Ubuntu (ie Gnome) Launcher.

Как объясняет эта запись в блоге , необходимо добавить переменные в довольно неясный файл ~/.gnomerc (No Mercy?:), чтобы их можно было передать приложениям, запущенным с помощью Launcher!

Поэтому просто отредактируйте ~/.gnomerc и добавьте переменные в ~/.bashrc , например,

export MYVAR="xyz"

и выйдите из системы/войдите в систему.

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

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