- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发 wxHaskell 库,并希望将我的开发工作与 hackage 中的稳定 wxHaskell 分开,我按以下方式使用 cabal-dev
:
cabal-dev add-source
添加每一个 (wx
, wxcore
, wxdirect
);<cabal-dev install wx
安装到沙箱本地软件包库中,正如预期的那样,检测到依赖项并构建并安装了所有内容。当我修改 wxHaskell 源代码时,问题就出现了。为了构建和安装更新的代码,我必须使用 cabal-dev install --reinstall ,这是有意义的,因为我不增加版本号;构建发生,我看到“正在安装库...”和“正在注册...”,但我在代码中所做的更改并不存在于重新编译的沙箱库中。
我目前的解决办法是删除 cabal-dev
库,并在每次想要重建时重复该过程。
最佳答案
更新: cabal-install >= 1.18 支持沙箱,并且今后将比 cabal-dev 得到更好的维护。 Cabal-install 还可以更好地支持将 add-source 与沙箱结合使用。以下是 cabal-install 中新沙箱功能的描述:http://coldwa.st/e/blog/2013-07-30-Cabal-sandbox.html
旧答案:
正如您所发现的,“add-source”不适用于主动更改的项目。我不确定那里是否有一个好的解决方案 - 很难跟踪添加源项目的位置(至少没有现有的基础设施),而且我不确定这总是正确的事情。
另一个工作流程可能会为您提供更好的服务 - 只需使用cabal-dev install
,指向您希望用于 future 开发的沙箱。 Cabal 工具链的最新版本(我指的是 Cabal、cabal-install 和 cabal-dev)允许这种事情:
$ ls
wx wxcore wxdirect
$ cabal-dev install --sandbox=<path-to-some-sandbox> ./wx ./wxcore ./wxdirect
...
(注意:我还没有使用 WX 对此进行测试 - 可能会出现我没有意识到的问题!)
假设一切按预期进行,这会将本地子目录中的三个软件包安装到指定的沙箱中。更新源仅意味着为更改的项目重新发出 cabal-dev 安装命令。
请记住,您必须自己以正确的顺序发出重复的 cabal-dev 安装命令,或者您必须使用上面的批处理命令并更新相应的版本号。
我并不认为这是理想的;)但我认为这比每次删除沙箱都要好。
关于haskell - 将 --reinstall 标志与 cabal-dev 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7451296/
我正在为 Plone 开发产品,比如 foo.core .除了那个核心产品,还有几个相关的产品。喜欢 foo.optional .这些相关产品可能在实例中可用,如果可用,则可以安装它们(换句话说:我不
我正在使用示例数据安装 magento2。所有要求都已完成,Magento 安装过程开始但在一些过程后停止。 我必须等待完整的安装过程,但没有任何 react 。所以我需要重新启动我的 magento
我正在本地计算机上为 Drupal 开发自定义模块。 当我编辑代码时,更改永远不会立即应用。因此,我转到管理模块,卸载并重新安装我的模块。这是卸载-安装-开发-重复的循环,缓慢而乏味。 有更好的方法吗
我刚刚重新安装了 Python 2.7 和 mysql-python(使用 Windows 安装程序 https://pypi.python.org/pypi/MySQL-python/1.2.5 )
我一直在尝试为 Symfony2 安装 Buzz。我将它添加到 deps 文件,并尝试更新我的供应商: php bin/vendors update 命令只是告诉我我已经安装了标准版本,我应该尝试使用
我已经执行了这个命令,现在码头不起作用了.。我怎样才能正确修理(或重新安装)码头?。我试着去做。但它并没有奏效。以下是我的错误消息:
我已经执行了这个命令,现在码头不起作用了.。我怎样才能正确修理(或重新安装)码头?。我试着去做。但它并没有奏效。以下是我的错误消息:
我正在使用 poetry 来管理我的 python 项目的依赖项,我真的很喜欢它!目前我的项目的一个依赖项是来自内部库的轮子,因为它是内部的,所以必须从轮子安装。最近我对库做了一些更改,我想在我的项目
我正在编写一个以密码作为参数的 BAT 脚本。我想从命令历史记录和输出窗口中删除所有提及密码的内容。我将此添加到脚本的末尾: cls doskey /reinstall 我第一次运行我的脚本时,它完全
我的一个 RMarkdown 脚本中有以下 R 代码: install.packages("dplyr", repos="http://cran.us.r-project.org") install.
我正在开发一个应该安装多个 Windows 服务的安装程序。我们经常制作新版本(使用新的 .msi 文件),并且我们使用重大升级使其更容易安装到以前的安装中。 问题是我们需要在不覆盖服务配置(例如帐户
我发现 --avoid-reinstalls 可以在 cabal 失败的地方构建软件包。它到底在做什么? Cabal 是否已经尝试避免重新安装,或者不应该这样做? 最佳答案 这个邮件列表帖子解释得很好
我有一个 requirements.txt 文件,其中有一些 git+ 引用。出于某种原因,我总是想重新安装这些,即使我进行了更改并修改了版本并将其推送到我的 github 存储库,pip 说要求已经
我知道我可以用 pip --ignore-installed --no-deps 重新安装没有依赖项的 pkg;但是,如果缺少依赖项,则无论如何都不会安装它。如何重新安装 pkg 并且仅安装未安装的依
有没有办法在重新安装应用程序代码时进行检测。 我看到可以通过在广播接收器中监听 PACKAGE_REPLACED 事件来检测来自市场的应用程序更新。但是如果应用程序是从编辑器 (eclipse) 重新
我正在尝试使用 bzip2 扩展从 mac 上的源代码编译 php,但我一直收到错误提示 checking for BZip2 in default path... not found 我尝试设置 L
基本上我正在尝试升级我的应用程序,据我所知,以下内容应该无条件地重新安装所有组件: msiexec/i myapp.msi REINSTALL=ALL REINSTALLMODE=vamus 但是在详
我正在将统计算法实现到 R 包中,该包将用于我的分析。 R 包在我的磁盘上是本地的。 由于我对 R 包进行了大量更改,因此我希望我的分析脚本在每次运行时重新安装并重新加载新的 R 包。 做到这一点的最
我正在开发 wxHaskell 库,并希望将我的开发工作与 hackage 中的稳定 wxHaskell 分开,我按以下方式使用 cabal-dev: 我从darcs获得了wxHaskell的源代码;
我的设置有: - oracle-instantclient (downgraded from 12 to 11) - Virtual Environment with Python + Django
我是一名优秀的程序员,十分优秀!