2011-03-04 53 views
0

我正在編寫一個非常簡單的外殼腳本,它並不像它應該那樣工作。以下是內容:外殼腳本需要變量作爲命令

# Defining base project directory 
BASE_DIR=/path/to/proj; 
PRODUCTION_DIR = $BASE_DIR/out/production/dir; 

# Generating headers 
javah -classpath $PRODUCTION_DIR -d $BASE_DIR/jni/include com.my.class.Name 

#  Building native libs 
ndk-build 

路徑是正確的,它的工作原理,如果我刪除$ PRODUCTION_DIR,我是否會像這樣運行它,它說:

line 3: PRODUCTION_DIR: command not found 
... 

是否有任何人知道什麼是錯誤?

+2

如果這是一個bash或破折號或sh腳本,則不需要(也可能不應該)用分號終止行。 – glomad 2011-03-04 17:48:02

回答

7

刪除空白,

PRODUCTION_DIR=$BASE_DIR/out/production/dir 

否則你想運行PRODUCTION_DIR與參數=$BASE_DIR/out/production/dir

此外,取出;公司在行結束,他們是多餘的

+1

+1,而且,你應該使用'make'這樣的構建工具。不是shell腳本。 – 2011-03-04 17:55:54

+0

@Noufal Ibrahim,從java源文件生成頭文件並編譯ndk項目... make? – 2011-03-04 17:59:42

+0

我完全不熟悉java,對生態系統沒有經驗,但我猜你正在做某種構建,因此建議使用make(這是我習慣的)構建系統。 – 2011-03-04 18:09:15