根据Jar插件的文档,输出目录由destinationDir属性控制:
文件
destinationDir生成存档的目录.
使用java插件默认:
project.distsDir
java插件添加的属性
distsDir:生成TAR和ZIP存档的目录.distsDirName:分发目录的名称.这相对于项目的构建目录进行了解释.
然后谷歌搜索我找到一个文件,指定他们的默认值:
文件
distsDir(只读)生成TAR和ZIP存档的目录.
使用java插件默认:
${project.buildDir}/${project.distsDirName}串
distsDirName分发目录的名称.这相对于项目的构建目录进行了解释.
使用java插件默认:
'distributions'
所有这些文档都指向相同的Gradle版本,与我安装的版本相匹配.
我在我的添加中build.gradle检查这些属性的实际值:
println("distsDirName = " + project.distsDirName)
println("distsDir = " + project.distsDir.toString())
jar {
println("jar.destinationDir = " + destinationDir)
}
Run Code Online (Sandbox Code Playgroud)
最后,我运行./gradlew并检查输出:
distsDirName = distributions
distsDir = /home/ntrrgc/myProject/build/distributions
jar.destinationDir = /home/ntrrgc/myProject/build/libs
Run Code Online (Sandbox Code Playgroud)
为什么不jar.destinationDir尊重其记录的默认值?
假设我有以下XML文档:
<species>
Mammals: <dog/> <cat/>
Reptiles: <snake/> <turtle/>
Birds: <seagull/> <owl/>
</species>
Run Code Online (Sandbox Code Playgroud)
然后我得到这样的species元素:
import lxml.etree
doc = lxml.etree.fromstring(xml)
species = doc.xpath('/species')[0]
Run Code Online (Sandbox Code Playgroud)
现在我想列出按物种分组的动物清单.我怎么能用ElementTree API做到这一点?
使用stream.Writablenode.js 0.10的基类,我如何处理消费者调用的情况.end(),从而表明没有更多数据可用?
在文档中,唯一告诉要在Writable子类中实现的方法是_write,但我找不到任何干净的方法来注意到输入何时耗尽。
我注意到,如果.then()由于任何错误(例如,对未定义变量的操作)而导致回调失败并且没有.catch()关联,则错误将被忽略。
在开发过程中这非常不舒服。
例如,此代码将退出而不会显示任何错误:
var Q = require('q');
var promise = Q('something');
promise
.then(function() {
buggyCode();
})
Run Code Online (Sandbox Code Playgroud)
可能的解决方法是手动添加一个像这样的错误处理程序,但是那没有内置的功能吗?
.catch(function(error) {
console.error(error.stack);
})
Run Code Online (Sandbox Code Playgroud) 我就是不明白。一旦这相对容易,我就从DefinitelyTyped下载了该代码段,假设它是全局声明的,我添加了脚本并开始工作。现在看来,我别无选择,只能使用复杂的程序包管理器和异步加载系统,并可能带有用于生产的优化程序。
理想情况下,我只想要一些这样的TypeScript代码
// maybe some import?
Promise.resolve("foo").then(function(msg) {
console.log(msg);
}
Run Code Online (Sandbox Code Playgroud)
像这样编译成一些JavaScript:
Promise.resolve("foo").then(function(msg) {
console.log(msg);
}
Run Code Online (Sandbox Code Playgroud)
我希望它能够在浏览器中或像Rhino这样的最小环境中运行。如果需要,我可以包括require.js,almond.js,使用browserify或其他工具构建,但是我希望它不需要XHR就可以工作。
到目前为止,我已经尝试过:
outFile以获取我的代码束,然后依次包含文件:almond.js,bluebird.js,my-code.js以及一些需要主模块才能正常运行的代码:(Error: See almond README: incorrect module build, no module name显然在bluebird.js我从官方下载页面中AMD并没有定义一个名字,我应该建立它自己还是什么......?)missing bluebird。requirejs.config({shim: { bluebird: { exports: "Promise" }}}):: exception from uncaught JavaScript throw: Error: Mismatched anonymous define() module和错误消息中的Bluebird的完整代码。Subsequent variable declarations must have the same type.我觉得我在这样一个看似简单的请求上浪费了太多时间,所以我将尝试询问StackOverflow :)
我正在尝试为客户端开发学习现代Javascript工作流程,所以我试试Grunt.
我想要一些像AngularJS,Bootstrap或moment.js这样的库,并将它们安装在我的dist目录中.如果可能的话,我想为他们提供一些包管理.
我已经看过Bower和grunt-bower-task,但我不确定它们适合这项任务,因为并非所有软件包都包含缩小版本和grunt-bower-task似乎无视那些.
是否有一个Grunt友好的包管理解决方案来管理客户端Javascript库,或者我应该继续将它们下载到一个vendor文件夹,然后告诉Grunt将它们复制到dist它们.js或.min.js变体中的文件夹中?
在node.js中是否有一个函数来查找位于其中某处的可执行文件$PATH,类似于whichBash的内置文件?
如果没有,我总是可以尝试解析process.env.PATH并手动搜索每个目录,但我宁愿避免这种情况.
鉴于Vim中的以下文本:
ab
cde
Run Code Online (Sandbox Code Playgroud)
从(第1行,第3列)到(第2行,第4列)这两个位置,如何在Vimscript中进行视觉选择,包括两端?
注意(第1行,第3栏)是指后面 的位置b,通常在正常模式下无法选择.
node.js ×2
amd ×1
bluebird ×1
bower ×1
elementtree ×1
gradle ×1
gruntjs ×1
javascript ×1
lxml ×1
project ×1
python ×1
q ×1
stream ×1
typescript ×1
vim ×1