问题标签 [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.

0 投票
1 回答
1092 浏览

go - 如何使用`dep`将带有内部包的Go应用程序部署到Heroku

我正在使用 Heroku 的 Golang buildpack 部署一个具有以下结构的简单 Web 应用程序

在我的主文件中,我导入了自己的handler

由于以下错误,Heroku 无法在我的项目上运行 go install:

我可以在本地运行go install并且my-app没有任何问题。在我看来,heroku 无法识别我的内部项目包。

我正在使用 dep,我的 Gopkg.toml 中有以下配置:

我还需要做什么来部署带有内部包的 Go 应用程序?谢谢。

0 投票
1 回答
354 浏览

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)。

所以我有以下问题:

  1. 我的修改有什么问题没有任何影响?

  2. 我听说 GDT 也有类似 NX-Bit 的东西来阻止堆栈执行,GDT 执行阻止和 NX-Bit 在分页级别有什么区别?

  3. 为什么有定义 nx-bit 的 4 个级别?仅更改上述条目之一(如 pml4e)会影响所有其他条目吗?

0 投票
1 回答
1047 浏览

go - dep 确保因解决失败而失败:未能清理 git 存储库。

我正在尝试导入 go repo https://github.com/cloudfoundry/cli

当我在我的 go 程序中添加 import 语句时,我的dep initordep ensure命令失败。

我不确定我无法获得回购的原因是什么。我可以git clone在 go/src 中做一个,它抱怨本地版本可能不一致。

不确定这个特定的回购发生了什么。

0 投票
1 回答
1217 浏览

c# - C# VS 2017 - 在构建期间禁用 DEP 功能

正如标题所说,如何禁用特定 C# 项目而不是整个操作系统的 DEP 功能?我使用 Visual Studio 2017

我需要在项目中使用旧的 ActiveX Dll,这需要禁用此功能,否则会在运行时抛出错误。

请注意,我到处寻找并关注每个谷歌搜索。我的属性/选项似乎与互联网上所说的不符(可能是因为我使用的是 VS 2017??)

谢谢

0 投票
0 回答
346 浏览

ubuntu - 新鲜的 ubuntu 设置 Golang + dep,dep 确保不做任何事情

我有一个烦人的问题,我找不到问题所在。我对 Ubuntu/Golang/dep 很陌生,但我试图了解它是如何工作的。

我有一个带有供应商文件的源项目,当我运行命令时dep ensure,没有任何反应,cli 只是继续运行,没有错误消息或任何正常消息,命令现在运行了 30 分钟,没有任何反应。

由于特定原因,我无法分享有关项目本身的任何信息。据我所知,项目文件应该不是问题。

golang 和 dep 的版本都是最新版本。

go bin 和 dep bin 的路径已经在 中设置好了.profile,同时导出了 GOPATH 路径。

0 投票
1 回答
3025 浏览

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中做所有这些

0 投票
0 回答
923 浏览

go - golang dep 更新 Gopkg.toml 中的源字段

Gopkg.toml我在其中添加了一行source="github.com/xxxx/xxxx"。然后打电话dep ensure -update。但旧目录仍在供应商中,无法通过将源添加到Gopkg.toml.

怎么做?

0 投票
1 回答
1560 浏览

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 文件夹结构进行屏幕截图

我尝试过的事情

  1. 将其关闭并再次打开。
  2. 我已经完全清理了我的 dep 包文件夹并重新运行 dep init。这就是我知道实际上只有一个包被拉出的方式。
  3. 确保我的 ssh 密钥在 github 上是最新的。
0 投票
0 回答
745 浏览

go - 从 Git 安装新计算机后,Dep 确保不工作

我刚刚为一家软件工程公司完成了我的第一个大项目,但是当我今晚尝试在我的个人计算机上安装代码时,我遇到了 Go 问题。我设置了我的 GOPATH 和 GOROOT,一切似乎都还好。以下是那些:

$GOPATH 和 $GOROOT

今天在工作计算机上一切正常,但现在只是痛苦。我收到各种各样的错误,但最大的是它“找不到包”。当它在我的工作计算机上运行良好时,它也给了我一个“不允许使用内部包”的错误。我主要在前端工作,所以我对这个主题有点无知,但我给一个实习生发了短信,他也不知道。我在想它是我的 Go 安装。

我们对依赖项使用了 dep ensure ,它在错误的位置查找。对于供应商文件。以下是文件结构的示例:

文件结构

我很乐意为此提供一些帮助,因为我很高兴能够展示我们努力工作的这件事,如果有人对此感兴趣,请点击 GitHub 链接!

https://github.com/acstech/doppler-events

谢谢大家!

0 投票
0 回答
686 浏览

go - Golang Dep 无法读取元数据

我使用这个命令:

在我的 gopath 中,像这样:

在我的代码中,导入是:

最终得到了这个:

实际上,aaa.com 不存在,它只是我的 gopath 中的一个目录

为什么即使我指定了-gopath参数,dep 仍然要求网络获取元数据?