J'ai plusieurs projets qui me demandent de changer de version de Java / Grails / Maven. J'essaie de gérer cela avec des scripts qui apporteraient les modifications. Par exemple:
#!/bin/sh
export JAVA_HOME=/cygdrive/c/dev/Java/jdk1.5.0_22
export PATH=$JAVA_HOME/bin:$PATH
export GRAILS_HOME=/cygdrive/c/dev/grails-1.0.3
export PATH=$GRAILS_HOME/bin:$PATH
export MAVEN_HOME=/cygdrive/c/dev/apache-maven-2.0.11
export PATH=$MAVEN_HOME/bin:$PATH
which java
which grails
which mvn
Lorsque cela s'exécute, il modifie avec succès le CHEMIN dans le contexte du script, mais le script se termine et aucune modification n'a été effectuée.
Comment puis-je exécuter un script de manière à changer le CHEMIN pour le shell dans lequel je travaille actuellement?
J'utilise Cygwin.
source
ne fonctionne que pourbash
. Sortie pourksh
:/bin/ksh: source: not found
poursh
:sh: 0: source: not found
. La réponse ci-dessous doit être considérée pour ces obus.