How to unset an environment variable in Ant's and/or tasks?












0















I have an Ant project that must install Jython, and for the Jython installation to work properly, the JYTHON_HOME environment variable must not be set.



Ant's <java> and <exec> tasks to not seem to support setting only, not unsetting. So, I am forced to make the caller of my build.xml unset the environment variable for me, like so:



<macrodef name="install-jython">
<sequential>
<property environment="env"/>
<fail if="env.JYTHON_HOME" message="You must unset JYTHON_HOME to install jython."/>
<java jar="${basedir}/ext/lib/jython-installer.jar" fork="true" dir="${basedir}/ext">
<arg line="-s -d jython -e demo -e doc"/>
</java>
</sequential>
</macrodef>


I tried setting JYTHON_HOME to the empty string, but that doesn't work:



        <java jar="${basedir}/ext/lib/jython-installer.jar" fork="true" dir="${basedir}/ext">
<arg line="-s -d jython -e demo -e doc"/>
<env key="JYTHON_HOME" value=""/>
</java>


The Jython installer really needs that environment variable not to exist at all.










share|improve this question























  • You can just unset it with bash by using the exec task

    – CAustin
    Dec 1 '18 at 1:28
















0















I have an Ant project that must install Jython, and for the Jython installation to work properly, the JYTHON_HOME environment variable must not be set.



Ant's <java> and <exec> tasks to not seem to support setting only, not unsetting. So, I am forced to make the caller of my build.xml unset the environment variable for me, like so:



<macrodef name="install-jython">
<sequential>
<property environment="env"/>
<fail if="env.JYTHON_HOME" message="You must unset JYTHON_HOME to install jython."/>
<java jar="${basedir}/ext/lib/jython-installer.jar" fork="true" dir="${basedir}/ext">
<arg line="-s -d jython -e demo -e doc"/>
</java>
</sequential>
</macrodef>


I tried setting JYTHON_HOME to the empty string, but that doesn't work:



        <java jar="${basedir}/ext/lib/jython-installer.jar" fork="true" dir="${basedir}/ext">
<arg line="-s -d jython -e demo -e doc"/>
<env key="JYTHON_HOME" value=""/>
</java>


The Jython installer really needs that environment variable not to exist at all.










share|improve this question























  • You can just unset it with bash by using the exec task

    – CAustin
    Dec 1 '18 at 1:28














0












0








0








I have an Ant project that must install Jython, and for the Jython installation to work properly, the JYTHON_HOME environment variable must not be set.



Ant's <java> and <exec> tasks to not seem to support setting only, not unsetting. So, I am forced to make the caller of my build.xml unset the environment variable for me, like so:



<macrodef name="install-jython">
<sequential>
<property environment="env"/>
<fail if="env.JYTHON_HOME" message="You must unset JYTHON_HOME to install jython."/>
<java jar="${basedir}/ext/lib/jython-installer.jar" fork="true" dir="${basedir}/ext">
<arg line="-s -d jython -e demo -e doc"/>
</java>
</sequential>
</macrodef>


I tried setting JYTHON_HOME to the empty string, but that doesn't work:



        <java jar="${basedir}/ext/lib/jython-installer.jar" fork="true" dir="${basedir}/ext">
<arg line="-s -d jython -e demo -e doc"/>
<env key="JYTHON_HOME" value=""/>
</java>


The Jython installer really needs that environment variable not to exist at all.










share|improve this question














I have an Ant project that must install Jython, and for the Jython installation to work properly, the JYTHON_HOME environment variable must not be set.



Ant's <java> and <exec> tasks to not seem to support setting only, not unsetting. So, I am forced to make the caller of my build.xml unset the environment variable for me, like so:



<macrodef name="install-jython">
<sequential>
<property environment="env"/>
<fail if="env.JYTHON_HOME" message="You must unset JYTHON_HOME to install jython."/>
<java jar="${basedir}/ext/lib/jython-installer.jar" fork="true" dir="${basedir}/ext">
<arg line="-s -d jython -e demo -e doc"/>
</java>
</sequential>
</macrodef>


I tried setting JYTHON_HOME to the empty string, but that doesn't work:



        <java jar="${basedir}/ext/lib/jython-installer.jar" fork="true" dir="${basedir}/ext">
<arg line="-s -d jython -e demo -e doc"/>
<env key="JYTHON_HOME" value=""/>
</java>


The Jython installer really needs that environment variable not to exist at all.







ant environment-variables jython






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 15 '18 at 17:34









David CharlesDavid Charles

1,0691026




1,0691026













  • You can just unset it with bash by using the exec task

    – CAustin
    Dec 1 '18 at 1:28



















  • You can just unset it with bash by using the exec task

    – CAustin
    Dec 1 '18 at 1:28

















You can just unset it with bash by using the exec task

– CAustin
Dec 1 '18 at 1:28





You can just unset it with bash by using the exec task

– CAustin
Dec 1 '18 at 1:28












0






active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53325019%2fhow-to-unset-an-environment-variable-in-ants-java-and-or-exec-tasks%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53325019%2fhow-to-unset-an-environment-variable-in-ants-java-and-or-exec-tasks%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Xamarin.iOS Cant Deploy on Iphone

Glorious Revolution

Dulmage-Mendelsohn matrix decomposition in Python