0

我正在从 Android.mk 运行一个 shell 脚本,它执行一些复制和操作,我想读取脚本返回的返回值,如果它失败,我想停止编译。

$(shell $(LOCAL_PATH)/makescript.sh)

我希望它是这样的:

value = ./makescript.sh
if value = 1 halt compilation of Android.mk file.
4

2 回答 2

0

我认为对于您想要实现的目标,这应该有效:

ifeq (1,$(shell $(LOCAL_PATH)/makescript.sh))
$(error your error message.)
endif

如果你想以赋值的方式来做,

return_val := $(shell $(LOCAL_PATH)/makescript.sh)
ifeq (1, $(return_val))
$(error your error message.)
endif
于 2014-11-10T05:48:13.877 回答
-1

您可以将脚本作为正常进程运行并获取脚本返回的输入流。

    try{
        Process proccess = new ProcessBuilder( )
            .command( "path to yur script file" )
            .redirectErrorStream( true )
            .start();

        InputStream in = new BufferedInputStream( proccess.getInputStream() );
        in.close();
    }catch( IOException ioe ){
        ioe.printStackTrace();
    }
于 2013-10-16T14:03:47.237 回答