问题标签 [dep]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - 如何使用`dep`将带有内部包的Go应用程序部署到Heroku
我正在使用 Heroku 的 Golang buildpack 部署一个具有以下结构的简单 Web 应用程序
在我的主文件中,我导入了自己的handler
包
由于以下错误,Heroku 无法在我的项目上运行 go install:
我可以在本地运行go install
并且my-app
没有任何问题。在我看来,heroku 无法识别我的内部项目包。
我正在使用 dep,我的 Gopkg.toml 中有以下配置:
我还需要做什么来部署带有内部包的 Go 应用程序?谢谢。
windbg - 直接从分页级结构更改 nx 位
我正在研究 Windows 10 x64 中的虚拟地址转换。我还阅读了有关 PML4、PDP、PDE 和 PTE 的信息,现在我正在尝试更改堆栈的 nx 位,以便通过修改分页结构来执行堆栈中的代码。
我看到下图描述了 PML4E、PDPE、PDE 和 PTE 中的 nx 位:
假设我们已经使用 VMWare 创建了一个内核调试 Windbg,并且在客户机中,我们正在使用 xdbg64 调试一个简单的应用程序。
使用 xdbg64 附加到目标进程后,现在rsp
指向00000089F06FF848
. 我更改了程序流程并执行jmp rsp
,现在rip
指向rsp
但它给出了一个access_violation exception
因为 DEP,所以我无法执行堆栈中的任何代码。(以前我用类似的东西改变了堆栈,xor rax,rax
在那里有一个有效的汇编代码)。
.process /f /i ffffa9841d9952c0
现在我使用来自主机的 Windbg 暂停来宾机器并进行有效翻译,使用和将显式进程更改为目标进程g
,现在我们cr3
的翻译有效。
然后我使用以下命令来获取 PML4E,PDPE,PDE,PTE 物理地址:
从上图中,第 63 位是 NX-Bit,然后我得到所有条目(PML4E、PDPE、PDE、PTE)来看看那里有什么。
对于 PML4E,它是:
转换 67 e8 16 33 00 00 00 0a (01100111 11101000 00010110 00110011 00000000 00000000 00000000 0000101 0 )
至
67 e8 16 33 00 00 00 0b (01100111 11101000 00010110 00110011 00000000 00000000 00000000 0000101 1 )
(请注意粗体部分。)
PDPE是:
转换 67 f8 0e 34 00 00 00 0a (01100111 11111000 00001110 00110100 00000000 00000000 00000000 0000101 0 )
至
67 f8 0e 34 00 00 00 0b (01100111 11111000 00001110 00110100 00000000 00000000 00000000 0000101 1 )
PDE 是:
转换 67 78 de 31 00 00 00 0a (01100111 01111000 11011110 00110001 00000000 00000000 00000000 0000101 0 )
至
67 78 de 31 00 00 00 0b (01100111 01111000 11011110 00110001 00000000 00000000 00000000 0000101 1 )
PTE是:
在这种情况下,我没有修改任何内容,因为 67 b8 a6 68 00 00 00 81 等于 01100111 10111000 10100110 01101000 00000000 00000000 00000000 10000001 因为它的最后一位是 1。
在最后一步中,我!vtop
再次运行以查看它是否仍转换为相同的物理地址,并且我发现它是正确的(指向相同的位置。)
然后我按下g
命令测试它是否可以执行堆栈内容,但我看到它仍然给出相同的错误(access_violation)并且无法执行该地址(rsp
)。
所以我有以下问题:
我的修改有什么问题没有任何影响?
我听说 GDT 也有类似 NX-Bit 的东西来阻止堆栈执行,GDT 执行阻止和 NX-Bit 在分页级别有什么区别?
为什么有定义 nx-bit 的 4 个级别?仅更改上述条目之一(如 pml4e)会影响所有其他条目吗?
go - dep 确保因解决失败而失败:未能清理 git 存储库。
我正在尝试导入 go repo
https://github.com/cloudfoundry/cli
当我在我的 go 程序中添加 import 语句时,我的dep init
ordep ensure
命令失败。
我不确定我无法获得回购的原因是什么。我可以git clone
在 go/src 中做一个,它抱怨本地版本可能不一致。
不确定这个特定的回购发生了什么。
c# - C# VS 2017 - 在构建期间禁用 DEP 功能
正如标题所说,如何禁用特定 C# 项目而不是整个操作系统的 DEP 功能?我使用 Visual Studio 2017
我需要在项目中使用旧的 ActiveX Dll,这需要禁用此功能,否则会在运行时抛出错误。
请注意,我到处寻找并关注每个谷歌搜索。我的属性/选项似乎与互联网上所说的不符(可能是因为我使用的是 VS 2017??)
谢谢
ubuntu - 新鲜的 ubuntu 设置 Golang + dep,dep 确保不做任何事情
我有一个烦人的问题,我找不到问题所在。我对 Ubuntu/Golang/dep 很陌生,但我试图了解它是如何工作的。
我有一个带有供应商文件的源项目,当我运行命令时dep ensure
,没有任何反应,cli 只是继续运行,没有错误消息或任何正常消息,命令现在运行了 30 分钟,没有任何反应。
由于特定原因,我无法分享有关项目本身的任何信息。据我所知,项目文件应该不是问题。
golang 和 dep 的版本都是最新版本。
go bin 和 dep bin 的路径已经在 中设置好了.profile
,同时导出了 GOPATH 路径。
docker - 码头工人:提供但未定义的标志
我正在为我的项目使用prometheus-postgresql-adapter ,并尝试在 Docker 中运行它。
我正在浏览他们的所有文档:
当我编写make
命令时,它向我抛出了这个错误:
GOOS=mingw64_nt-10.0 GOARCH=amd64 CGO_ENABLED=0 go build -a -installsuffix cgo --ldflags '-w' -o prometheus-postgresql-adapter main.go cmd/go: 不支持的 GOOS/GOARCH 对 mingw64_nt-10.0/amd64 make : *** [prometheus-postgresql-adapter] 错误 2
所以我运行它make OS=windows
然后
但是当我尝试使用此代码运行该图像时:
并得到了那个错误
提供但未定义的标志:-pg-host
我什至更改-pg-host=pg_prometheus
为,pg-password='mypassword'
因为默认主机是 localhost 仍然会出现该错误:
提供但未定义的标志:-pg-password
当我试图删除-pg-host
或-pg-password
只让pg-prometheus-log-samples
仍然得到那个错误时”:
提供但未定义的标志:-pg-prometheus-log-samples
任何人都知道为什么不识别这些标志值?
我也尝试写-pg-password='mypassword'
as -pg-password=mypassword
,-pg-password mypassword
但仍然出现相同的错误。
ps我在windows中做所有这些
go - golang dep 更新 Gopkg.toml 中的源字段
Gopkg.toml
我在其中添加了一行source="github.com/xxxx/xxxx"
。然后打电话dep ensure -update
。但旧目录仍在供应商中,无法通过将源添加到Gopkg.toml
.
怎么做?
go - dep init -v 在执行时挂起
我将从这里的免责声明开始。我在 Windows 子系统上的 Ubuntu 18.0.4 上运行 go。
我有一个包,我可以在其中从 Windows 命令行成功运行“dep init”。我在我的 Ubuntu 子系统中创建了 repo 的新克隆(成功克隆,因此没有网络连接问题)并运行“dep init”。
这是我遇到问题的时候。Dep 只是在拉下一个包后挂起。对 dep init 的后续调用不会提取更多包。运行“dep init -v”会产生以下结果:
查看附加的屏幕截图,可以看到进程线程已启动但没有执行任何操作(0% 的 CPU 和 RAM 使用率)。
使用 HTOP 和我的 dep pkg 文件夹结构进行屏幕截图
我尝试过的事情:
- 将其关闭并再次打开。
- 我已经完全清理了我的 dep 包文件夹并重新运行 dep init。这就是我知道实际上只有一个包被拉出的方式。
- 确保我的 ssh 密钥在 github 上是最新的。
go - 从 Git 安装新计算机后,Dep 确保不工作
我刚刚为一家软件工程公司完成了我的第一个大项目,但是当我今晚尝试在我的个人计算机上安装代码时,我遇到了 Go 问题。我设置了我的 GOPATH 和 GOROOT,一切似乎都还好。以下是那些:
今天在工作计算机上一切正常,但现在只是痛苦。我收到各种各样的错误,但最大的是它“找不到包”。当它在我的工作计算机上运行良好时,它也给了我一个“不允许使用内部包”的错误。我主要在前端工作,所以我对这个主题有点无知,但我给一个实习生发了短信,他也不知道。我在想它是我的 Go 安装。
我们对依赖项使用了 dep ensure ,它在错误的位置查找。对于供应商文件。以下是文件结构的示例:
我很乐意为此提供一些帮助,因为我很高兴能够展示我们努力工作的这件事,如果有人对此感兴趣,请点击 GitHub 链接!
https://github.com/acstech/doppler-events
谢谢大家!
go - Golang Dep 无法读取元数据
我使用这个命令:
在我的 gopath 中,像这样:
在我的代码中,导入是:
最终得到了这个:
实际上,aaa.com 不存在,它只是我的 gopath 中的一个目录
为什么即使我指定了-gopath
参数,dep 仍然要求网络获取元数据?