当我更新我的 Android Studio IDE 时,一些问题阻止了我。 非常感谢您的帮助。 像这样:
Error:Failed to resolve: com.google.android:android:2.3.1
安装存储库并同步项目
打开文件
在项目结构对话框中显示
这是信息:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':Lightning:preEnv_42DebugBuild'.
> Could not resolve all dependencies for configuration ':Lightning:env_42DebugCompileClasspath'.
> Could not find com.google.android:android:2.3.1.
Searched in the following locations:
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/m2repository/com/google/android/android/2.3.1/android-2.3.1.pom
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/m2repository/com/google/android/android/2.3.1/android-2.3.1.jar
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/google/m2repository/com/google/android/android/2.3.1/android-2.3.1.pom
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/google/m2repository/com/google/android/android/2.3.1/android-2.3.1.jar
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/android/m2repository/com/google/android/android/2.3.1/android-2.3.1.pom
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/android/m2repository/com/google/android/android/2.3.1/android-2.3.1.jar
file:/Applications/Android Studio 3.0 Preview.app/Contents/gradle/m2repository/com/google/android/android/2.3.1/android-2.3.1.pom
file:/Applications/Android Studio 3.0 Preview.app/Contents/gradle/m2repository/com/google/android/android/2.3.1/android-2.3.1.jar
https://jitpack.io/com/google/android/android/2.3.1/android-2.3.1.pom
https://jitpack.io/com/google/android/android/2.3.1/android-2.3.1.jar
http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/com/google/android/android/2.3.1/android-2.3.1.pom
http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/com/google/android/android/2.3.1/android-2.3.1.jar
file:/Users/gongyasen/Desktop/Android/workspace/LightningWS/LightningWS/Lightning/libs/android-2.3.1.jar
file:/Users/gongyasen/Desktop/Android/workspace/LightningWS/LightningWS/Lightning/libs/android.jar
Required by:
project :Lightning > org.jetbrains.anko:anko:0.10.0 > org.jetbrains.anko:anko-coroutines:0.10.0 > org.jetbrains.kotlinx:kotlinx-coroutines-android:0.13
* Try:
Run with --info or --debug option to get more log output.
* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':Lightning:preEnv_42DebugBuild'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:98)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:68)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:60)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.execute(DefaultTaskGraphExecuter.java:248)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.execute(DefaultTaskGraphExecuter.java:239)
at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:114)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:239)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:226)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:120)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:77)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:101)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:95)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:527)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:95)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:46)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: org.gradle.api.artifacts.ResolveException: Could not resolve all dependencies for configuration ':Lightning:env_42DebugCompileClasspath'.
at org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$1.visitArtifacts(DefaultLenientConfiguration.java:148)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationArtifactCollection.ensureResolved(DefaultConfiguration.java:1198)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationArtifactCollection.getArtifacts(DefaultConfiguration.java:1176)
at com.android.build.gradle.internal.tasks.AppPreBuildTask.checkAppWithAndroidLibAsCompileOnly(AppPreBuildTask.java:56)
at com.android.build.gradle.internal.tasks.AppPreBuildTask.run(AppPreBuildTask.java:52)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.doExecute(DefaultTaskClassInfoStore.java:139)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:132)
at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:706)
at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:689)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.execute(ExecuteActionsTaskExecuter.java:115)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.execute(ExecuteActionsTaskExecuter.java:109)
at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:114)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:109)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:90)
... 26 more
Caused by: org.gradle.internal.resolve.ModuleVersionNotFoundException: Could not find com.google.android:android:2.3.1.
Searched in the following locations:
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/m2repository/com/google/android/android/2.3.1/android-2.3.1.pom
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/m2repository/com/google/android/android/2.3.1/android-2.3.1.jar
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/google/m2repository/com/google/android/android/2.3.1/android-2.3.1.pom
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/google/m2repository/com/google/android/android/2.3.1/android-2.3.1.jar
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/android/m2repository/com/google/android/android/2.3.1/android-2.3.1.pom
file:/Users/gongyasen/Desktop/Android/android-sdk-macosx/extras/android/m2repository/com/google/android/android/2.3.1/android-2.3.1.jar
file:/Applications/Android Studio 3.0 Preview.app/Contents/gradle/m2repository/com/google/android/android/2.3.1/android-2.3.1.pom
file:/Applications/Android Studio 3.0 Preview.app/Contents/gradle/m2repository/com/google/android/android/2.3.1/android-2.3.1.jar
https://jitpack.io/com/google/android/android/2.3.1/android-2.3.1.pom
https://jitpack.io/com/google/android/android/2.3.1/android-2.3.1.jar
http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/com/google/android/android/2.3.1/android-2.3.1.pom
http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories/com/google/android/android/2.3.1/android-2.3.1.jar
file:/Users/gongyasen/Desktop/Android/workspace/LightningWS/LightningWS/Lightning/libs/android-2.3.1.jar
file:/Users/gongyasen/Desktop/Android/workspace/LightningWS/LightningWS/Lightning/libs/android.jar
Required by:
project :Lightning > org.jetbrains.anko:anko:0.10.0 > org.jetbrains.anko:anko-coroutines:0.10.0 > org.jetbrains.kotlinx:kotlinx-coroutines-android:0.13
at org.gradle.internal.resolve.result.DefaultBuildableComponentResolveResult.notFound(DefaultBuildableComponentResolveResult.java:38)
at org.gradle.api.internal.artifacts.ivyservice.ivyresolve.RepositoryChainComponentMetaDataResolver.resolveModule(RepositoryChainComponentMetaDataResolver.java:88)
at org.gradle.api.internal.artifacts.ivyservice.ivyresolve.RepositoryChainComponentMetaDataResolver.resolve(RepositoryChainComponentMetaDataResolver.java:59)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.ComponentResolversChain$ComponentMetaDataResolverChain.resolve(ComponentResolversChain.java:85)
at org.gradle.api.internal.artifacts.ivyservice.clientmodule.ClientModuleResolver.resolve(ClientModuleResolver.java:45)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.DependencyGraphBuilder$ModuleVersionResolveState.resolve(DependencyGraphBuilder.java:661)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.DependencyGraphBuilder$ModuleVersionResolveState.getMetaData(DependencyGraphBuilder.java:672)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.DependencyGraphBuilder$DependencyEdge.calculateTargetConfigurations(DependencyGraphBuilder.java:297)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.DependencyGraphBuilder$DependencyEdge.attachToTargetConfigurations(DependencyGraphBuilder.java:270)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.DependencyGraphBuilder.traverseGraph(DependencyGraphBuilder.java:167)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.graph.DependencyGraphBuilder.resolve(DependencyGraphBuilder.java:104)
at org.gradle.api.internal.artifacts.ivyservice.resolveengine.DefaultArtifactDependencyResolver.resolve(DefaultArtifactDependencyResolver.java:88)
at org.gradle.api.internal.artifacts.ivyservice.DefaultConfigurationResolver.resolveGraph(DefaultConfigurationResolver.java:137)
at org.gradle.api.internal.artifacts.ivyservice.ShortCircuitEmptyConfigurationResolver.resolveGraph(ShortCircuitEmptyConfigurationResolver.java:73)
at org.gradle.api.internal.artifacts.ivyservice.ErrorHandlingConfigurationResolver.resolveGraph(ErrorHandlingConfigurationResolver.java:66)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$8.execute(DefaultConfiguration.java:493)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$8.execute(DefaultConfiguration.java:485)
at org.gradle.internal.Transformers$4.transform(Transformers.java:169)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:114)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.resolveGraphIfRequired(DefaultConfiguration.java:485)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.resolveToStateOrLater(DefaultConfiguration.java:461)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration.access$1500(DefaultConfiguration.java:115)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.getSelectedArtifacts(DefaultConfiguration.java:862)
at org.gradle.api.internal.artifacts.configurations.DefaultConfiguration$ConfigurationFileCollection.access$2500(DefaultConfiguration.java:797)
... 43 morea
项目gradle文件:
buildscript {
ext.kotlin_version = '1.1.2-4'
ext.anko_version = '0.10.0'
ext.support_lib_version = '25.3.1'
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-alpha1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
模块gradle文件:
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
repositories {
jcenter()
mavenCentral()
maven { url "https://jitpack.io" }
maven {
url "http://repo.baichuan-android.taobao.com/content/groups/BaichuanRepositories"
}
flatDir {
dirs 'libs'
}
}
dependencies {
compile project(':pulltorefresh')
compile project(':ViewPagerIndicator')
compile project(':ToggleButtonLib')
compile project(':SlidingMenu')
compile project(':gesture-imageview')
compile project(':xutilslib')
compile project(':MPChartLib')
compile files('libs/date4j.jar')
compile files('libs/httpmime-4.1.3.jar')
compile files('libs/SocialSDK_email.jar')
compile files('libs/SocialSDK_sms.jar')
compile files('libs/umeng-update-v2.6.0.1.jar')
compile project(':multi-image-selector')
compile project(':AutoFitTextView')
compile files('libs/libphonenumber-5.8.jar')
compile project(':RapidFloatingActionButton')
compile project(':photoView')
compile files('libs/umeng-onlineconfig_v1.0.0.jar')
compile files('libs/renderscript-v8.jar')
compile files('libs/umeng-analytics-v5.6.1.jar')
compile 'com.android.support:multidex:1.0.1'
compile files('libs/okhttp-2.6.0.jar')
compile project(':xrecyclerview')
compile project(':RecyclerViewStickyHeader')
compile project(':AdvancedRecyclerview')
compile project(':RecyclerTabLayout')
compile project(':AndroidDesign')
compile project(':Udesk_Separate_UI')
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
compile 'io.reactivex.rxjava2:rxkotlin:2.0.1-RC1'
compile 'io.reactivex.rxjava2:rxjava:2.0.9'
compile 'com.github.florent37:expectanim:1.0.0'
compile project(':topsnackbar')
compile files('libs/libammsdk.jar')
// compile 'com.fenchtose:tooltip:0.1.5'
compile project(':tooltip')
compile('com.google.android:flexbox:0.3.0-alpha2') {
exclude(module: 'appcompat-v7')
exclude(module: 'support-annotations')
}
compile 'com.google.zxing:android-core:3.3.0'
compile project(':PushSDK')
compile 'pl.droidsonroids.gif:android-gif-drawable:1.2.4'
compile 'com.github.wrdlbrnft:sorted-list-adapter:0.1.0.5'
compile('com.github.wooplr:Spotlight:1.2.3') {
exclude(module: 'appcompat-v7')
exclude(module: 'support-annotations')
}
compile files('libs/SocialSDK_WeiXin_Full.jar')
compile files('libs/umeng_social_net.jar')
compile files('libs/umeng_social_api.jar')
compile files('libs/umeng_social_tool.jar')
compile files('libs/umeng_social_shareboard.jar')
compile files('libs/zxing_core.jar')
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
compile "org.jetbrains.anko:anko:$anko_version"
compile "com.android.support:cardview-v7:$support_lib_version"
compile 'com.zaaach:citypicker:1.1'
testCompile 'junit:junit:4.12'
compile 'com.tencent.bugly:crashreport:latest.release'
//BUGLY SDK
compile('com.taobao.android:alisdk-hotfix:2.0.9') {
exclude(module: 'utdid4all')
}
compile 'com.squareup.retrofit2:adapter-rxjava2:2.2.0'
compile 'com.squareup.retrofit2:retrofit:2.2.0'
compile('com.squareup.retrofit2:converter-gson:2.2.0') {
exclude(module: 'gson')
}
compile 'com.google.code.gson:gson:2.8.0'
compile 'com.squareup.okhttp3:logging-interceptor:3.7.0'
compile 'com.squareup.okhttp3:okhttp:3.7.0'
compile 'com.squareup.okio:okio:1.12.0'
compile 'com.github.simonpercic:oklog3:2.1.0'
}
android {
dataBinding {
enabled = true
}
signingConfigs {
releaseSign {
keyAlias KEY_ALIAS
keyPassword KEY_PASSWORD
storeFile file(STORE_FILE)
storePassword STORE_PASSWORD
v2SigningEnabled false
}
}
compileSdkVersion COMPILE_SDK_VERSION as int
buildToolsVersion BUILD_TOOLS_VERSION
lintOptions {
abortOnError false
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDirs = ['libs']
}
instrumentTest.setRoot('tests')
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
dexOptions {
preDexLibraries true
dexInProcess = true
javaMaxHeapSize "4g"
}
packagingOptions {
exclude 'LICENSE.txt'
exclude 'META-INF/maven/com.squareup.okio/okio/pom.xml'
exclude 'META-INF/maven/com.squareup.okio/okio/pom.properties'
}
applicationVariants.all { variant ->
variant.outputs.all {
def fileName = "Lightning_${variant.name}.apk"
if(fileName.contains("website")){
fileName = "lightning.apk"
}
outputFileName = fileName
}
}
lintOptions {
disable 'InvalidPackage'
disable 'MissingTranslation'
}
defaultConfig {
minSdkVersion MIN_SDK_VERSION as int
targetSdkVersion TARGET_SDK_VERSION as int
multiDexEnabled true
}
flavorDimensions "release"
productFlavors {
website {
dimension 'release'
buildConfigField("String", "CHANNEL_ID", '""')
}
jinritoutiao {
buildConfigField("String", "CHANNEL_ID", '"170"')
}
qihu360 {
buildConfigField("String", "CHANNEL_ID", '"171"')
}
baidutuiguang {
buildConfigField("String", "CHANNEL_ID", '"172"')
}
wangyixinwen {
buildConfigField("String", "CHANNEL_ID", '"173"')
}
qita {
buildConfigField("String", "CHANNEL_ID", '"174"')
}
env_42 {
buildConfigField("String", "CHANNEL_ID", '""')
}
env_production {
buildConfigField("String", "CHANNEL_ID", '"102"')
}
env_local {
buildConfigField("String", "CHANNEL_ID", '""')
}
}
productFlavors.all {
flavor ->
flavor.manifestPlaceholders = [
CHANNEL_VALUE: name,
]
buildConfigField("String", "CHANNEL_VALUE", '"' + name + '"')
versionName '2.7.7'
versionCode 45
}
buildTypes {
release {
minifyEnabled true
proguardFile PROGUARD_FILE
signingConfig signingConfigs.releaseSign
}
debug {
debuggable true
minifyEnabled true
proguardFile PROGUARD_FILE
signingConfig signingConfigs.releaseSign
}
}
useLibrary 'org.apache.http.legacy'
}
afterEvaluate {
def task = tasks.findByName('assembleWebsiteRelease')
if(task != null){
task.doLast {
copy {
from 'build/outputs/mapping/website/release/mapping.txt'
into './'
}
}
}
}
最佳答案
显然问题出在 Anko 上,与新的 Android Studio 版本不兼容。正如 m43bloe 所建议的(引用 GitHub Anko issue )你可以解决这个问题:
compile("org.jetbrains.anko:anko:0.10.0") {
exclude group: 'com.google.android', module: 'android'
}
在撰写本文时,一切正常。希望对您有所帮助!
关于android - 如何在 Android Studio 3.0 Canary 1 :Failed to resolve: com. google.android :android:2. 3.1 上解决此问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44192685/
出于纯粹的兴趣,我很好奇如何按顺序创建PI,而不是在过程结果之后生成数字,而是让数字在过程本身生成时显示。如果是这种情况,那么数字可以自行产生,我可以对以前看到的数字实现垃圾收集,从而创建一个无限系列。结果只是在Pi系列之后每秒生成一个数字。这是我通过互联网筛选的结果:这是流行的计算机友好算法,类机器算法:defarccot(x,unity)xpow=unity/xn=1sign=1sum=0loopdoterm=xpow/nbreakifterm==0sum+=sign*(xpow/n)xpow/=x*xn+=2sign=-signendsumenddefcalc_pi(digits
如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby
我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%
exe应该在我打开页面时运行。异步进程需要运行。有什么方法可以在ruby中使用两个参数异步运行exe吗?我已经尝试过ruby命令-system()、exec()但它正在等待过程完成。我需要用参数启动exe,无需等待进程完成是否有任何rubygems会支持我的问题? 最佳答案 您可以使用Process.spawn和Process.wait2:pid=Process.spawn'your.exe','--option'#Later...pid,status=Process.wait2pid您的程序将作为解释器的子进程执行。除
鉴于我有以下迁移:Sequel.migrationdoupdoalter_table:usersdoadd_column:is_admin,:default=>falseend#SequelrunsaDESCRIBEtablestatement,whenthemodelisloaded.#Atthispoint,itdoesnotknowthatusershaveais_adminflag.#Soitfails.@user=User.find(:email=>"admin@fancy-startup.example")@user.is_admin=true@user.save!ende
我正在为一个项目制作一个简单的shell,我希望像在Bash中一样解析参数字符串。foobar"helloworld"fooz应该变成:["foo","bar","helloworld","fooz"]等等。到目前为止,我一直在使用CSV::parse_line,将列分隔符设置为""和.compact输出。问题是我现在必须选择是要支持单引号还是双引号。CSV不支持超过一个分隔符。Python有一个名为shlex的模块:>>>shlex.split("Test'helloworld'foo")['Test','helloworld','foo']>>>shlex.split('Test"
我实际上是在尝试使用RVM在我的OSX10.7.5上更新ruby,并在输入以下命令后:rvminstallruby我得到了以下回复:Searchingforbinaryrubies,thismighttakesometime.Checkingrequirementsforosx.Installingrequirementsforosx.Updatingsystem.......Errorrunning'requirements_osx_brew_update_systemruby-2.0.0-p247',pleaseread/Users/username/.rvm/log/138121
这可能是个愚蠢的问题。但是,我是一个新手......你怎么能在交互式rubyshell中有多行代码?好像你只能有一条长线。按回车键运行代码。无论如何我可以在不运行代码的情况下跳到下一行吗?再次抱歉,如果这是一个愚蠢的问题。谢谢。 最佳答案 这是一个例子:2.1.2:053>a=1=>12.1.2:054>b=2=>22.1.2:055>a+b=>32.1.2:056>ifa>b#Thecode‘if..."startsthedefinitionoftheconditionalstatement.2.1.2:057?>puts"f
我是一个Rails初学者,但我想从我的RailsView(html.haml文件)中查看Ruby变量的内容。我试图在ruby中打印出变量(认为它会在终端中出现),但没有得到任何结果。有什么建议吗?我知道Rails调试器,但更喜欢使用inspect来打印我的变量。 最佳答案 您可以在View中使用puts方法将信息输出到服务器控制台。您应该能够在View中的任何位置使用Haml执行以下操作:-puts@my_variable.inspect 关于ruby-on-rails-如何在我的R
我有一个服务模型/表及其注册表。在表单中,我几乎拥有服务的所有字段,但我想在验证服务对象之前自动设置其中一些值。示例:--服务Controller#创建Action:defcreate@service=Service.new@service_form=ServiceFormObject.new(@service)@service_form.validate(params[:service_form_object])and@service_form.saverespond_with(@service_form,location:admin_services_path)end在验证@ser