2011-04-06 54 views
2

我Mathematica中建立一个应用程序包。该应用程序包含多个包,指的是其他应用程序包构建应用程序包与包multple和引用在数学

要设置好一切,我已经使用并遵循工作台的帮助部分,其也可以在应用程序包的说明:http://reference.wolfram.com/workbench/index.jsp?topic=/com.wolfram.eclipse.help/html/tasks/applications/introduction.html包和应用程序款但...

  1. 我已经实现并测试了单个包应用程序包,并且所有工作都很好。
  2. 我多包和应用在这一刻,因为下面发现的问题是行不通的罚款: 一)应用程序的主包调用了额外的软件包实现的功能,但是这些功能似乎没有存在的认可。我甚至尝试在包的开头使用Needs命令在主包中明确地调用它们,但没有任何结果。 * 我做错了什么? *额外的包都在应用程序文件夹中的帮助指导做。 更具体地说:

主要封装和应用程序被命名为OptMainFuncAll`所以主要的包OptMainFuncAll.m与

BeginPackage["OptMainFuncAll`"] 

开头的额外软件包IntermFunct.m和VolCandExt.m开始:

在IntermFunct.m和VolCandExt.m定义
BeginPackage[ "OptMainFuncAll`IntermFunct`"] 
BeginPackage[ "QuadOptMainFuncAll`VolCandExt`"] 

然而功能是未知我在做什么错 - 在 OptMainFuncAll.m要求?

IHAVE甚至试图明确声明

Needs[ "OptMainFuncAll`IntermFunct`"] 
Needs[ "QuadOptMainFuncAll`VolCandExt`"] 

在OptMainFuncAll.m的开始,它并没有解决我的问题

此外,我做出了第二个应用程序包的引用(BasicSym)工作台显示为引用,但其功能在OptMainFuncAll.m中似乎也是未知的。

我也试图开始OptMainFuncAll.m与

BeginPackage[{OptMainFuncAll`, BasicSym`}] 

,并没有工作;在运行时间在控制台返回消息:

BeginPackage :: CXT:在 BeginPackage [{OptMainFuncAll , BasicSym}]在位置1指定了无效的上下文 。上下文必须由通过和 用`结束分离 有效的符号名。 EndPackage :: noctx:没有定义 以前的上下文。

我相信我在做一些愚蠢的应用程序包开发者的错误,但我似乎无法把它放在手上。

如果你可以直接告诉我主包的BeginPackage [?]中的确切包声明,额外的包和我在这里提供的名称的引用包,以便一切顺利运行,我非常感谢。

回答

3

请尝试:

BeginPackage["OptMainFuncAll`", 
     {"BasicSym`", 
     "OptMainFuncAll`IntermFunct`", 
     "QuadOptMainFuncAll`VolCandExt`"} 
] 

当前包名是第一个参数,而第二个参数是包名(上下文),这将取决于列表。

相关问题