问题标签 [tooling]

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 投票
2 回答
2544 浏览

javascript - Javascript 工具:现在可以进行多复杂的重构?

来自大多数IDE支持复杂重构的Java,可以跨越更多源代码文件和项目,我想知道是否有任何支持相同的Javascript编辑器?

我刚刚看完了一些关于 Cloud9 的 AST 工具支持的演示。该演示文稿已有一年多的历史了。我想知道从那时起 Cloud9 是否获得了复杂的重构功能,例如可以理解。NodeJs require() 语句?当然,这个问题不想局限于 Cloud9,我们有括号.io、Orion 等。这只是我遇到的演示文稿,所以这就是我给出基于 Cloud9 的示例的原因。

假设我有一个导出对象原型的 Node 模块,而我有另一个使用它的模块。假设我喜欢在导出的原型中重命名一个函数,而我正在寻找的是 IDE 将根据更改重构其他模块中的调用。是否有任何工具支持跨模块依赖项重构重命名?

0 投票
1 回答
626 浏览

asp.net-mvc - 安装 ASP.NET 和 Web Tools 2013.1 后打开时 VS2012 ProjectTypeGuids Lost

我在 Visual Studio 2012 中安装了“ASP.NET 和 Web 工具 2013.1”。

我有一个解决方案,它有一个带有以下项目类型 guid 的 ASP.NET MVC 4 项目:

这些指南适用于: ASP.NET MVC 4.0 Web 应用程序 Windows (C#)

这是创建新 ASP.NET 4.0 项目时的常用配置。它工作正常。

问题是,出于某种奇怪的原因,每当我打开我的解决方案时,第一个 GUID (ASP.NET MVC 4.0) 都会从 .csproj 文件中删除,因此我丢失了所有相关的工具。

无论我如何尝试编辑它:

  • 如果我关闭解决方案并手动编辑此文件,添加缺少的 GUID,当我再次打开它时,GUID 将被删除
  • 如果我卸载项目,编辑 .csproj 并重新加载它,GUID 也会被删除。
  • 我在版本控制(SVN)下有这个项目,所以我也尝试关闭 VS,更新 SVN 中的文件(使用 Tortoise)并重新打开解决方案。你知道吗?打开解决方案时删除 GUID !!!

如果我使用 ASP.NET MVC 4.0 项目创建一个新解决方案,它可以正常工作,并且保留 GUID。

知道为什么会发生这种情况以及如何解决吗?

更新

如果我在安全模式下打开 VS,这不会发生。所以我怀疑它一定是一个扩展,但我不知道如何发现哪个是冒犯性的扩展。有没有办法知道哪个扩展可以对此负责(除了卸载/尝试周期......)

0 投票
1 回答
442 浏览

gradle - 我可以使用 gradle 连接器从 build.gradle 文件中获取任意配置信息吗?

我正在将 Gradle 连接器与从服务下载的 Gradle 项目一起使用。我想对该项目进行一些 Gradle 操作,但需要该项目的一些信息。

下载的项目的 build.gradle 有一些我想提取的属性:

如果我使用

我可以从模型中得到一些值,但不是那些我想要的值(也许我用错了?)。有没有办法从项目中提取这些特定值(可能是不同的模型)?我也可以对构建文件进行一些文本解析,但我希望这是我的最后一个选择。

0 投票
1 回答
32 浏览

model-view-controller - 用于 asp.net 网站项目中 mvc 的 Visual Studio 工具

谁能帮我。我找不到在 asp.net 网站项目(不是 asp.net Web 应用程序项目)中启用 Visual Studio mvc 模板的解决方案。我知道在 asp.net web 应用程序项目中是可能的,但是对于 asp.net 网站项目我还没有找到解决方案。

谁能帮我。

非常感谢。

0 投票
2 回答
1778 浏览

git - 是否有从 GitHub 存储库生成简单 CONTRIBUTORS 文件的工具?

我知道有 git 命令可以从存储库中提取和汇总贡献者信息,例如来自此链接的信息,但这对于 GitHub 存储库不是很有用,因为我会收到真实姓名和电子邮件。

我正在寻找具有这些特殊功能的 CLI 工具:

  • 查找本地(或远程)git 存储库的贡献者。
  • 将这些贡献者与 GitHub 用户名相关联。
  • 生成 ASCII 或 Markdown 摘要。

有这样的工具吗?我问是因为我不认为我是第一个提出这些要求的人。这似乎是一项简单的任务。

0 投票
1 回答
2149 浏览

java - 以跨平台方式引用 tools.jar 的正确方法

我正在构建一个 JVM 诊断工具,并且我正在使用 JMX 连接到 JVM,我在这里面临的问题是我需要能够以当前在整个 Unix 和 Windows 中兼容的方式加载 tools.jar我正在使用 gradle 生成的运行脚本将其加载tools.jar到类路径,但似乎这种方法取决于太多因素。

有谁知道在类路径上提供这个 jar 的推荐或优雅的方法,而不是盲目地猜测它在哪里?

0 投票
0 回答
649 浏览

c++ - 带有 Clang 工具的 c/c++ windows 重构工具

我需要编写一个实用程序来重构 c / c ++ 中的源代码。为此,我使用 Clang。Clang 使用 Visual Studio 2012 在 Windows 7 x64 上构建。

下面是需要反转条件IF和交换代码块THEN的代码ELSE

对于基础,我使用示例https://github.com/eliben/llvm-clang-samples/blob/master/src_clang/tooling_sample.cpp 为此,我绕过所有条件并更改每个条件。

结果重构示例如下所示:

不像我喜欢的那么好,但可以工作。但是如果你搞重构,下面的程序是在应用程序的输出中得到的稀饭。

我的实用程序的结果:

告诉我,我做错了什么?Clang 是否还有其他一些重构功能,例如重命名变量和 goto 标签?提前致谢。

0 投票
1 回答
263 浏览

html - Grunt dist 注释掉 css 文件

当我grunt从终端运行以创建dist我的站点的版本时,该链接在文件夹的文件中css被注释掉。htmldist

在运行之前grunt<head>…&lt;/head>是这样的:

运行后grunt,文件的墨迹css被注释掉,这显然使dist网站的版本看起来很糟糕,没有任何css附加。

运行下面的 grunt 后,您可以看到它的样子command

如您所见,它注释掉main.css文件,然后切断其余部分<head>…&lt;/head>

另外,我已经添加了我的 Gruntfile,如果这对任何人都有帮助的话:

提前致谢!

0 投票
2 回答
2730 浏览

google-chrome - Chrome 中的 Gulp livereload 错误

我正在尝试让 LiveReload 与 Gulp 和 Chrome 一起使用。我已经安装了 Chrome 扩展程序(v2.0.9),我已经启用了“允许访问文件 URL”,每个人都说要这样做。我正在运行一个简单的 PHP 服务器php -S 127.0.0.1:35729 -t dist。我已经安装了 gulp-livereload 并使用以下代码启动了监视任务:

我在 Chrome 中转到 127.0.0.1:35729。我通过单击扩展按钮启用 LiveReload。我去编辑一个文件。吞咽 说:

网页不更新。当页面加载时,Chrome 中的控制台会出现这个可爱的错误:

我尝试了一些疯狂的方法并将 livereload.js 文件放在服务器的根目录中,然后我得到了这个错误:

WebSocket 连接到“ws://127.0.0.1:35729/livereload”失败:连接在收到握手响应之前关闭

另外,我想在不同的端口上运行 LiveReload,但是当我将 php 服务器和 Gulp watch 更改为端口 9999 时,我收到此错误:

WebSocket 连接到“ws://127.0.0.1:35729/livereload”失败:连接建立错误:net::ERR_CONNECTION_REFUSED

0 投票
1 回答
1604 浏览

salesforce - Salesforce 工具 API - 停用触发器

我正在尝试使用工具 API 停用触发器。我在开发人员 ORG 中取得了成功。但无法在真正的开发者组织中做到这一点。这是 Salesforce 工具 API 错误吗?

这是算法的基础,

  1. 创建具有唯一名称的 MetadataContainer
  2. 保存元数据容器
  3. 创建一个 ApexTriggerMember 设置 Body、MetadataContainerId、ContentEntityId 和 Metadata[apiVersion=33.0 packageVersions=[] status="Inactive" urls=nil>]
  4. 修改元数据["status"]="Inactive"
  5. 保存 ApexTriggerMember
  6. 创建/保存 ContainerAsyncRequest
  7. 监控容器直到完成。
  8. 适当时显示错误

在沙箱中,我在重新查询 Apex 输入代码 hereTriggerMember 后确认只读字段“内容”看起来合适。我还确认 MetadataContainerId 现在指向状态为“已完成”的 ContainerAsyncRequest

这是我的结果,它似乎是成功的,但 ApexTrigger 从未停用 ContentEntityId = 01q.............[我要停用的 ApexTrigger]