导入Go程序源代码作为库。

huangapple go评论81阅读模式
英文:

Import Go program source as library

问题

很抱歉,我不能直接返回翻译好的代码部分。但是,我可以为你提供一些指导来解决你的问题。

如果你想将 GitHub 上的 Go 代码作为库导入到你的程序中,但是该代码全部都在 "main" 包中,你可以尝试以下方法,而无需改变原始代码:

  1. 创建一个新的包(例如,命名为 "mylibrary")。
  2. 在新包中创建一个新的 Go 文件,并将其命名为与原始代码文件相同的名称。
  3. 在新文件中,导入原始代码文件所在的包,并将其重命名为一个新的名称(以避免冲突)。
  4. 在新文件中,创建一个新的函数或方法,作为你的库的入口点,并将原始代码中的相关代码放入其中。
  5. 在你的程序中,导入你创建的新包("mylibrary"),并使用其中的函数或方法。

通过这种方式,你可以将原始代码作为库导入到你的程序中,而无需改变原始代码的结构。

希望这些指导对你有帮助!如果你有任何其他问题,请随时提问。

英文:

I have found code on github in Go and want to use it as library in my program. Unfortunately, whole code is in "main" package. Is there any way how I can import the code as library without changing that code?

答案1

得分: 1

不。分叉存储库,并将其修复为可作为库使用,或者如果它足够简单,直接将文件复制到您的主要包中。

英文:

No. Fork the repo, and fix it to work as a library, or if it's simple enough, copy the files directly into your main package.

答案2

得分: 0

你可以将其作为一个独立的包导入,类似于:

import sth "path/to/your/package"
英文:

you can import it as a separate package, something like:

import sth "path/to/your/package"

答案3

得分: 0

不,你不能这样做。

同意@JimB的观点- fork仓库并将其更改为'package main' > 'package lib',然后在你的代码中导入它,就像这样:

package main

import L "somelib"

func main() {
    L.SomeFunc()
}

等等...

英文:

No, you can't.

Agree with @JimB - fork repo and change it like 'package main' > 'package lib' and import in your code like that:

package main

import L "somelib"

func main() {
    L.SomeFunc()
}

etc..

huangapple
  • 本文由 发表于 2014年5月14日 03:34:16
  • 转载请务必保留本文链接:https://go.coder-hub.com/23640039.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定