编译时需要文件的EOF错误

问题描述 投票:0回答:1

所以我目前有目前的目录结构:

- project
  - lib
    - struct
      - external
        - external.cr
  - src
    - project
      - version.cr
    - project.cr
  - ...
  - shard.yml

我目前正在使用当前命令编译我的代码,而在主项目目录(包含shard.yml)中:

`crystal src/project.cr`

I then receive the following error:

Error in src/project.cr:2: while requiring "struct/external"

require "struct/external"
^

Syntax error in lib/struct/external/external.cr:15: expecting identifier 'end', not 'EOF'

我的project.cr文件如下所示:

require "./project/*"
require "struct/external"

# Doc omitted 
module Project
    extend self
end

我的external.cr文件如下所示:

#
class External
    def initialize(@vertices : Array(SubclassOne), @edges : Array(SubclassTwo))
end

#
class SubclassOne
    def initialize()
end

#
class SubclassTwo
    def initialize()
end
crystal-lang
1个回答
0
投票

外部文件中的类中的函数缺少end关键字。

© www.soinside.com 2019 - 2024. All rights reserved.