我正在 https://github.com/leekchan/accounting 试用示例
package main
import (
"fmt"
"math/big"
"github.com/shopspring/decimal"
"github.com/leekchan/accounting"
)
func main() {
ac := accounting.Accounting{Symbol: "$", Precision: 2}
fmt.Println(ac.FormatMoney(123456789.213123))
}
并完全按照 Github 上显示的方式使用它们,我收到以下错误:
Failed parsing input: package "github.com/shopspring/decimal" is imported from multiple locations: "/users/dev/go/src/github.com/shopspring/decimal" and "/users/dev/go/src/github.com/leekchan/accounting/vendor/github.com/shopspring/decimal"
我不能遗漏:
github.com/shopspring/decimal
否则我会得到另一个错误。我试过:
"dec" github.com/shopspring/decimal
但这并没有改变任何东西。不应该吗?
奇怪的是我在任何地方都找不到有关此的任何详细信息。我真的是唯一得到这个的人吗,还是我遗漏了一些非常明显的东西?
最佳答案
这是因为他们有一个包含 github.com/shopspring/decimal 的 checkin vendor 目录,看起来您已经在您的路径中了。您最好在项目中有一个包含 github.com/shopspring/decimal 和 github.com/leekchan/accounting 的 vendor 目录,这样您的目录结构将如下所示:
- main.go
| - vendor
| - github.com/leekchan/accounting
| - github.com/shopspring/decimal
关于go - Leekchan Accounting 与 ShopSpring Decimal 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50259822/
文章目录git常用命令(简介,详细参数往下看)Git提交代码步骤gitpullgitstatusgitaddgitcommitgitpushgit代码冲突合并问题方法一:放弃本地代码方法二:合并代码常用命令以及详细参数gitadd将文件添加到仓库:gitdiff比较文件异同gitlog查看历史记录gitreset代码回滚版本库相关操作远程仓库相关操作分支相关操作创建分支查看分支:gitbranch合并分支:gitmerge删除分支:gitbranch-ddev查看分支合并图:gitlog–graph–pretty=oneline–abbrev-commit撤消某次提交git用户名密码相关配置g
当你在类中包含方法名冲突的模块时,它会使用类定义的方法。有没有办法选择我想运行的?moduleBdefself.hello"helloB"endendclassAincludeBdefself.hello"helloA"endendA.hello#=>thisprints"helloA",whatifIwant"helloB"? 最佳答案 Ben,当你在Ruby中调用一个方法(比如hello)时,会发生以下情况:如果接收者的特征类有一个名为hello的方法,它将被调用。如果不是:如果接收者的类有一个名为hello的实例方法,它将被调
在Railcasts上,我注意到一个非常有趣的功能“转到符号”窗口。它像Command-T一样工作,但显示当前文件中可用的类和方法。如何在vim中获取它? 最佳答案 尝试:helptags有各种程序和脚本可以生成标记文件。此外,标记文件格式非常简单,因此很容易将sed(1)或类似的脚本组合在一起,无论您使用何种语言,它们都可以生成标记文件。轻松获取标记文件(除了下载生成器之外)的关键在于格式化样式而不是实际解析语法。 关于ruby-on-rails-Textmate'Gotosymbol
我已经安装了最新版本的compass、sass和susy。但我仍然收到此错误:Unabletoactivatesusy-2.1.1,becausesass-3.2.17conflictswithsass(~>3.3.0)有人知道这个Ruby是如何工作的吗?这是我安装的gem的列表:***LOCALGEMS***CFPropertyList(2.2.0)chunky_png(1.3.0)compass(0.12.4)compass-core(1.0.0.alpha.19)compass-import-once(1.0.4)compass-rails(1.1.3)fssm(0.2.10)l
我正在处理的代码库最近从Ruby1.9.2升级到Ruby1.9.3,从Rails3.1升级到Rails3.2.2。因为我使用的是RVM,所以我只是简单地执行了rvminstall1.9.3,我原以为这是所有必要的。当我运行时railss我得到了错误[BUG]cross-threadviolationonrb_gc()我找到了许多与此问题相关的链接。有oneonStackOverflow,但它并没有真正给出答案。最有希望的答案是ontheRVMsite:IneverycaseofthisIhaveseenthusfarithasalwaysendedupbeingthatarubygem
我们如何访问那些与byebug保留名称冲突的变量名称?(byebug)varlocalh={"hierarchyId"=>"59f0b029e4b037ef11a055f7","level"=>2,...self=(byebug)我想访问变量“h”但键入h会显示“byebug的帮助对话框”(byebug)hbreak--Setsbreakpointsinthesourcecodecatch--Handlesexceptioncatchpointscondition--Setsconditionsonbreakpointscontinue--Runsuntilprogramends,hi
在过去的C#和Java工作中,我习惯于这样的声明不是线程安全的:x+=y;但是,在与Ruby并行运行上述代码时,我未能观察到任何线程间的冲突。我读过Rubyautomaticallypreventsmultiplethreadsfromwritingtothesamedataconcurrently.这是真的?因此+=运算符在Ruby中是线程安全的吗? 最佳答案 好吧,这取决于您的实现和很多事情。在MRI中,有一个GVL(GiantVMLock)这样的东西,它控制哪个线程一次实际执行代码。你看,在MRI中,一次只有一个线程可以执行R
自97年以来我一直在使用vi/vim进行各种快速编辑和管理任务,但最近才考虑使用它来替换Netbeans作为我选择的ruby编辑器。我发现一件事在Netbeans和Eclipse中非常有用的是Ctrl+Click“转到定义”功能,您可以在其中按住Ctrl键并单击一个类或方法,然后它将带您了解定义。现在,我玩过丰富的ctags和rails.vim,而且很接近,但没有雪茄。这就是我想要的:默认情况下在Netbeans和Eclipse中,您可以在本地rails中按住ctrl并单击本地方法或类项目,但你也可以ctrl+click定义在gems或用Ruby编写的系统库。以Netbeans为例
我一直在构建一个执行会计功能的Rails应用程序。作为其中的一部分,我有一个类名为Transaction的模型。到目前为止一切顺利,我构建此功能已有一个月左右的时间,一切都按预期进行。到目前为止...我刚刚发现几个月前使用Ruport库开发的一些旧报告功能已停止工作。看起来Ruport在生成PDF时需要一个库,该库也有一个名为Transaction的类/模块。TypeErrorinAdmin/teamreportsController#generateTransactionisnotamodule...Thiserroroccurredwhileloadingthefollowingf
到目前为止的故事:我有一个Rails应用程序,其模型名为“Term”。在尝试安装Cucumber之前一切都很好。运行时rakecucumber我明白了Termisnotaclass(TypeError)发生这种情况是因为Cucumber包含另一个gem,'term-ansicolor'(在控制台中执行漂亮的彩色文本输出),并且term-ansicolor定义了一个名为“Term”的模块。Cucumber在包含Rails模型之前包含term-ansicolor,因此在加载“Term”模型时“Term”已经被定义为一个模块。顶级模块和类在Ruby中不能有相同的名称,因此会发生冲突。不想重命