我正在尝试创建一个julia语言包并在项目中使用它.
现在我只有一个jl文件,我不知道如何用它创建一个包.
我已阅读此链接,但我仍然不知道该怎么做.我想创建一个带有jl文件的本地包,并使用以下代码在我自己的本地项目中使用它:using MyPackage.
有人能帮助我吗?
spe*_*on2 12
你应该把文件放进去
〜/ .julia/v0.X/MyPackage的/ SRC/MyPackage.jl
其中〜是您的主目录,X是您正在使用的Julia的版本号.X将是3,除非你是Julia的开发或夜间版本,在这种情况下它将是4.
另请注意,要使其工作,文件MyPackage.jl应定义模块MyPackage,并在使用MyPackage调用后导出您希望可用的定义.
要自动创建此结构,可以调用Pkg.generate("MyPackage","MIT"),其中MIT可以替换为另一个受支持的默认许可证.这将在正确的位置创建文件夹并为您设置模块结构.然后,您只需将代码合并到该结构中即可.
以下是该文件的两个可能内容的示例~/.julia/v0.3/MyPackage/src/MyPackage.jl:
module MyPackage
function test()
1
end
end # module
Run Code Online (Sandbox Code Playgroud)
和
module MyPackage
export test
function test()
1
end
end # module
Run Code Online (Sandbox Code Playgroud)
在第一种情况下,我没有export任何东西.因此,当using MyPackage仅调用模块MyPackage本身时,将使用户可用.如果我想使用该test函数,我将不得不使用完全限定的名称:MyPackage.test().
在第二种情况下,我选择导出该功能test.这发生在线上export test.现在,当我打电话时using MyPackage,模块MyPackage和功能test都可供用户使用.我不需要使用完全限定的名称来访问test:test()将工作.
| 归档时间: |
|
| 查看次数: |
4602 次 |
| 最近记录: |