Ho diversi progetti che mi richiedono di cambiare le versioni di Java / Grails / Maven. Sto cercando di gestirlo con alcuni script che potrebbero apportare le modifiche. Per esempio:
#!/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
Quando questo viene eseguito, cambia correttamente il PERCORSO nel contesto dello script, ma lo script termina e non è stata apportata alcuna modifica.
Come posso eseguire uno script in modo da cambiare il PERCORSO per la shell in cui sto attualmente lavorando?
Sto usando Cygwin.
sourcefunziona solo perbash. Uscita perksh:/bin/ksh: source: not foundpersh:sh: 0: source: not found. La risposta seguente dovrebbe essere considerata per queste shell.