2011-04-06 59 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`"} 
] 

當前包名是第一個參數,而第二個參數是包名(上下文),這將取決於列表。

相關問題