如何为Google App Engine的GoClipse项目添加外部包?

时间:2011-09-23 23:19:58

标签: eclipse google-app-engine go

我已经编译了Goauth,因此我可以在Go Google App Engine项目中使用OAuth。我在哪里放goauth.a文件,以便我可以在项目中使用它,并在部署到GAE服务器时使用它?如果我将它放在$ GOROOT / pkg的子文件夹中,我可以在本地工作,但是在部署时编译时无法找到它。

GoClipse设置了一个包含大量文件夹的项目,我不确定它们的用途是什么,我应该在哪里放goauth.a以及如何导入它?

1 个答案:

答案 0 :(得分:2)

为了解决这个问题,我最终在我的应用程序的目录树中包含了包的源代码,如google-appengine-go组http://groups.google.com/group/google-appengine-go/browse_thread/thread/1fe745debc678afb上的这个帖子所述

以下是该主题的重要部分:

  

您可以根据需要包含尽可能多的包。包是导入的   通过相对于基本目录的路径(具有app.yaml的目录)   文件),所以如果你有以下内容:

     

的HelloWorld / app.yaml中
  helloworld / hello / hello.go //包你好   helloworld / world / world.go //包世界

     

您可以在hello中导入“world”并在世界中导入“hello”。

     

如果您要包含第三方库,则可能如下所示:

     

的HelloWorld / app.yaml中
  helloworld / hello / hello.go //包你好   helloworld / world / world.go //包世界
  helloworld / goprotobuf.googlecode.com / proto / * .go // package proto

     

然后你可以像往常一样导入“goprotobuf.googlecode.com/proto”。