导入本地swift模块

时间:2016-11-27 23:01:48

标签: swift module package

Swift新手在这里,在Linux上使用swift 3和包管理器。

我有一个包调节,可执行和一个兄弟包Utils,旨在成为一个库。 Utils / Sources有一个TextReader.swift文件,类TextReader及其init函数都是公共的。 Utils目录是一个git仓库,在Regulate / Package.swift中描述:

Playlists2$ git checkout e71521b3b26c5e053fa7ce2f4e2ca602de9b734f
C:\WINDOWS\system32>ROBOCOPY Playlists2 Playlists1 /MIR /COPY:D /XD .git
Playlists1$ GIT_AUTHOR_DATE="2016-11-13 19:47:27" GIT_COMMITTER_DATE="2016-11-13 19:47:27" git commit -m "Massive UUID updates for entire directory, but restore last modified date\n\nROBOCOPY <backup> <cwd> /COPY:T /XD .git"

Playlists2$ git checkout 9ec2d7abfac0c1a1c5eaeb58abedcb65bbab29e5
C:\WINDOWS\system32>ROBOCOPY Playlists2 Playlists1 /MIR /COPY:D /XD .git
Playlists1$ GIT_AUTHOR_DATE="2016-11-13 21:26:46" GIT_COMMITTER_DATE="2016-11-13 21:26:46" git commit -m "Fix missing tracks and save dates before mass deleting playlists"

Playlists2$ git checkout fdea81464c9fff080249b5287693a4d0555fcc06
C:\WINDOWS\system32>ROBOCOPY Playlists2 Playlists1 /MIR /COPY:D /XD .git
Playlists1$ GIT_AUTHOR_DATE="2016-11-13 22:11:51" GIT_COMMITTER_DATE="2016-11-13 22:11:51" git commit -m "Remove unused playlists and collapse soundtracks into mega playlist"

Playlists2$ git checkout 0fe301fc61526944ae178d360b0482739e0dfefc
C:\WINDOWS\system32>ROBOCOPY Playlists2 Playlists1 /MIR /COPY:D /XD .git
Playlists1$ GIT_AUTHOR_DATE="2016-11-13 22:18:34" GIT_COMMITTER_DATE="2016-11-13 22:18:34" git commit -m "Remove interwoven, contemporary, duplicate, and missed playlists"

Playlists2$ git checkout 
C:\WINDOWS\system32>ROBOCOPY Playlists2 Playlists1 /MIR /COPY:D /XD .git
Playlists1$ GIT_AUTHOR_DATE="2016-11-13 22:22:00" GIT_COMMITTER_DATE="2016-11-13 22:22:00" git commit -m "Add new playlist for Aurora"

我已尝试了3种方法在Regulate程序中实例化TextReader对象,并收到3条错误消息:

dependencies: [.Package(url: "../Utils", "1.0.0")]

错误:使用未解析的标识符&#39; TextReader&#39;

import Utils
...
let reader = TextReader(filename: name)

错误:模块&#39; Utils&#39;没有名为&#39; TextReader&#39;

的成员
import Utils
...
let reader = Utils.TextReader(filename: name)

错误:模块中没有这样的decl

看起来,库模块可能需要一些额外的结构来声明其导出。

我需要在这做什么?谢谢!

1 个答案:

答案 0 :(得分:0)

d&#39;哦!这看起来像名称冲突。

当我使用Utils2而不是Utils时,它工作正常。使用Utils克隆并构建了另一个模块,但是当我引用它时显然转到了某个系统模块。