如何使用YUM安装特定的 Ruby 版本(比如 1.9.3-p194)?
例如yum install ruby --version?
使用YUM可以实现这样的事情吗?
在build.gradle文件内部,获取所有包列表的最简洁方法是SourceSet什么?
我可以通过解析每个源文件来获得它,如下所示 -
def sourceSet = project.sourceSets.findByName('test')
def pattern = Pattern.compile('package (\\S+);')
def packages = []
sourceSet.allSource.each {
for (def scan = new Scanner(it); scan.hasNext();) {
def matcher = scan.nextLine() =~ pattern
if (matcher.matches()) {
packages << matcher[0][1]
break
}
}
}
packages.unique(true)
// allows, e.g.
packages.each { println it }
Run Code Online (Sandbox Code Playgroud)
- 但似乎应该有更好的方法.
编辑添加:我需要这些信息,以便在编译时将其他参数传递给JVM,因此我需要在编译之前从源代码中获取它.
我尝试以下方式打开相机:
...
private void runCamera() {
String storageState = Environment.getExternalStorageState();
if (storageState.equals(Environment.MEDIA_MOUNTED)) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File imageFile = new File(Singleton.instanse.mPushFilePath);
mImageFileUri = Uri.fromFile(imageFile);
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT,
mImageFileUri);
startActivityForResult(intent, CAMERA_RESULT);
}
...
Run Code Online (Sandbox Code Playgroud)
如果我运行此方法运行下一个方法:
07-16 19:46:22.264: I/System.out(6875): -onPause
07-16 19:46:26.104: I/System.out(6875): -onStop
Run Code Online (Sandbox Code Playgroud)
我制作照片,结束下一步的方法:
07-16 19:46:41.217: I/System.out(6875): -onDestroy
07-16 19:46:41.284: I/System.out(6875): -onCreate
07-16 19:46:41.291: I/System.out(6875): -onStart
07-16 19:46:41.295: I/System.out(6875): -onActivityResult
07-16 19:46:41.295: I/System.out(6875): -onResume
07-16 19:46:41.295: I/System.out(6875): -onPostResume
07-16 19:46:41.522: I/System.out(6875): -onPause
07-16 19:46:41.522: I/System.out(6875): -onStop
07-16 19:46:41.522: I/System.out(6875): -onDestroy
07-16 19:46:41.604: …Run Code Online (Sandbox Code Playgroud) 我已经配置hg log中~/.hgrc只列出默认情况下从当前分支提交:
[defaults]
log = --branch .
Run Code Online (Sandbox Code Playgroud)
但是,偶尔我想真正看到所有分支机构的提交.有没有办法告诉hg log从命令行调用何时不使用配置的默认值但回退到内置行为?作为一个蛮力的解决方案,~/.hgrc完全忽略这个特殊的调用hg log对我来说是好的.
我知道不推荐使用默认值来支持别名,但是不能使用与现有命令相同的名称创建别名,这是我想要的,以便不必学习新的命令名,尤其是.何时.~/.hgrc由多个开发人员共享设置
编辑:无法创建与现有命令具有相同名称的别名是已修复的回归.
我想使用仅工件的符号来下载其文件名与模块名称完全不同的单个工件。我的常春藤工件模式配置为:
ivy {
artifactPattern 'http://host/[organization]/[module]/[revision]/[artifact]-[revision].[ext]'
}
Run Code Online (Sandbox Code Playgroud)
但是,“仅工件”符号似乎仅支持:
group(映射到[organization]),name(映射到[module]),version(映射到[revision]),ext(映射到[exp])和classifier(映射到[classifier],此处未使用)。[artifact]网址的部分似乎总是被替换name。
有没有一种方法可以在Gradle中显式设置[artifact]URL中替换为什么?在普通常春藤XML我能够通过指定一个实现这个神器标签与name内部attibute设置dependency标签。
我的问题与该问题有些相关,除了我没有服务器端ivy.xml文件,而且我无法使用技巧来滥用,classifier因为我的工件名称不仅仅是后缀与模块名称不同。
我正在使用一个Freestyle项目/工作,其中包含Jenkins Job DSL插件Process Job DSLs提供的构建步骤,即这是"种子"工作.如何从提供的代码中获取种子作业的名称?Use the provided DSL script
我试图应用这个问题的答案,但没有一个有效.
我有一个 git 命令来获取当前存储库的最新 SHA,如下所示:
git log --pretty=format:"%H" -n 1
Run Code Online (Sandbox Code Playgroud)
我有一个 Windows 批处理脚本,我想按如下方式使用它:
SET CURRENT_SHA=???
Run Code Online (Sandbox Code Playgroud)
但我不知道如何将从 git 调用的输出获取到变量中,以便我可以使用它。
编辑
我尝试了以下方法(这似乎是我在这里和其他地方读到的一般建议):
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /F "tokens=* USEBACKQ" %%i IN (`git log --pretty=format:"%H" -n 1`) DO (SET CURRENT_SHA=%%i)
ECHO Current Sha: %CURRENT_SHA%
Run Code Online (Sandbox Code Playgroud)
..但我得到:
fatal: failed to stat 'format:i) ECHO Current Sha: 48bce83e800b96607afb2a387c4fcd7b0b0f037e
Run Code Online (Sandbox Code Playgroud)
那么引号可能有问题吗?
在尝试收集有关 Gradle 的初始信息时,我阅读了这篇文章:
http://techblog.chegg.com/2011/04/29/gradle-a-better-way-to-build/
它声称
“在内部,Gradle 使用 Ivy 来管理依赖项”
这样对吗?
我认为 Ivy、Maven 和 Gradle 是完全不同的依赖管理工具。
谢谢。