为什么Mathematica WolframScript文件失败?

时间:2017-09-12 14:56:22

标签: wolfram-mathematica

我使用Mathematica 11并创建一个包含两个文件的项目:一个名为MyPackage.m的包文件,另一个名为run.m。包文件只包含普通函数,而不是特殊的Mathematica包结构({{ 3}})和另一个包含获取MyPackage.m并使用函数的代码。

(* Package.m *)
myFun[x_String] := Print[x]
...

(* run.m *)
<<"Package.m"
myFun["Hello,World"]

我将这两个文件放在一个目录中,并确保$path包含目录路径。但是,当我运行wolframscript -file ./run.m -print all时,它会抱怨$Failed。 问题是:在使用wolframscript时如何导入另一个文件?即使它们位于同一目录中,它似乎找不到目标文件。

我使用Mathematica 11并在Ubuntu服务器中运行wolframscript,我安装了最新的Free CDF Player。

1 个答案:

答案 0 :(得分:0)

我遇到运行脚本没问题。此外,-print all似乎是多余的。

C:\Users\chrisd\Documents\test>dir
 Volume in drive C is Windows7_OS
 Volume Serial Number is 102A-B66B

 Directory of C:\Users\chrisd\Documents\test

14/09/2017  15:03    <DIR>          .
14/09/2017  15:03    <DIR>          ..
14/09/2017  14:59                29 Package.m
14/09/2017  14:59                38 run.m
               2 File(s)             67 bytes
           2 Dir(s)  215,590,776,832 bytes free

C:\Users\chrisd\Documents\test>wolframscript -file run.m -print all
Hello,World

C:\Users\chrisd\Documents\test>type Package.m
myFun[x_String] := Print[x]

C:\Users\chrisd\Documents\test>type run.m
<<"Package.m"
myFun["Hello,World"];

C:\Users\chrisd\Documents\test>