gofabric8>无法解压缩/Users/apple/.fabric8/bin/oc.zip zip:不是有效的zip

时间:2016-11-14 10:49:35

标签: maven openshift kubernetes microservices fabric8

我正在尝试为微服务设置环境。我正在使用fabric8来做到这一点。

我正在使用mvn fabric8:cluster-start -Dfabric8.cluster.kind=openshift命令。执行时我遇到了以下错误...

  [INFO] gofabric8> Downloading https://github.com/openshift/origin/releases/download/v1.3.1/openshift-origin-client-tools-v1.3.1-dad658de7465ba8a234a4fb40b5b446a45a4cee1-mac.zip...
    [INFO] gofabric8> **Unable to unzip /Users/apple/.fabric8/bin/oc.zip zip: not a valid zip fileUnable to download client zip: not a valid zip file**
    [INFO] gofabric8> using the executable /Users/apple/.fabric8/bin/minishift
    [INFO] gofabric8> running: /Users/apple/.fabric8/bin/minishift start --vm-driver=xhyve --memory=4096 --cpus=1
    [INFO] gofabric8> Starting local OpenShift cluster...
    [INFO] gofabric8> Downloading ISO
    [INFO] gofabric8> 
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 18:50 min
    [INFO] Finished at: 2016-11-14T16:05:32+05:30
    [INFO] Final Memory: 21M/224M
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal io.fabric8:fabric8-maven-plugin:3.1.49:cluster-start (default-cli) on project demo: Failed to execute gofabric8 start --batch --minishift --console. java.io.IOException: Failed to execute process stdin for gofabric8 start --batch --minishift --console: java.util.UnknownFormatConversionException: Conversion = ''' -> [Help 1]
    org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal io.fabric8:fabric8-maven-plugin:3.1.49:cluster-start (default-cli) on project demo: Failed to execute gofabric8 start --batch --minishift --console. java.io.IOException: Failed to execute process stdin for gofabric8 start --batch --minishift --console: java.util.UnknownFormatConversionException: Conversion = '''
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)

任何想法?

4 个答案:

答案 0 :(得分:1)

我今天遇到类似的问题,当时我试图按照fabric8上手说明:https://fabric8.io/guide/getStarted/gofabric8.html。 我用了: gofabric8 start --minishift并收到此错误:

DSKTP-000003:~ usr$ gofabric8 start --minishift fabric8 recommends OSX users use the xhyve driver xhyve driver already installed Downloading https://github.com/jimmidyson/minishift/releases/download/v1.0.0-beta.1/minishift-darwin-amd64... Downloaded /Users/brent.fisher/.fabric8/bin/minishift kubectl is already available on your PATH Downloading https://github.com/openshift/origin/releases/download/v1.3.1/openshift-origin-client-tools-v1.3.1-dad658de7465ba8a234a4fb40b5b446a45a4cee1-mac.zip... Unable to unzip /Users/brent.fisher/.fabric8/bin/oc.zip zip: not a valid zip fileUnable to download client zip: not a valid zip file using the executable /Users/brent.fisher/.fabric8/bin/minishift Unable to get status fork/exec /Users/brent.fisher/.fabric8/bin/minishift: exec format errorDSKTP-000003:~ usr$

我正在使用gofabric8版本0.4.112:

gofabric8 version gofabric8, version 0.4.112 (branch: 'master', revision: '50d5d75') build date: '20161129-10:39:49' go version: '1.7.1' 似乎minishift选项试图在该URL下载不再存在[1.3.1]的openshift客户端(oc)版本。我可以通过从这里手动下载开放班次来解决错误:https://github.com/openshift/origin/releases/tag/v1.3.2 并将其解压缩并将提取的可执行文件重命名为oc

答案 1 :(得分:0)

我想知道这个命令的输出是什么:

  

gofabric8版

二进制文件位于〜/ .fabric8 / bin中,如果它不在$ PATH上。

我想知道你的gofabric8二进制文件是否老了。例如我们现在有0.4.105版本。

如果你的gofabric8二进制文件是旧的;它听起来像汽车升级没有正常工作;所以尝试删除〜/ .fabric8 / bin / gofabric8并重新运行你的mvn命令

答案 2 :(得分:0)

检查https://github.com/openshift/origin/releases以获取当前可用的版本列表。

您的maven构建正在寻找旧版本: https://github.com/openshift/origin/releases/download/v1.3.1/openshift-origin-client-tools-v1.3.1-dad658de7465ba8a234a4fb40b5b446a45a4cee1-mac.zip

您可以尝试覆盖构建pom中的依赖项并使用当前可用的版本: openshift-origin-client-tools-v1.3.2-ac1d579-mac.zip

答案 3 :(得分:0)

我遇到了同样的事情,布伦特的上述答案对我有用。 Oc现在高达1.3.3,而minishift高达Beta2。

回答詹姆斯'问题,这是我的fabric8版本:

gofabric8,版本0.4.113(分支:' master',修订版:' 0610f51')   建立日期:' 20170110-20:02:39'   go version:' 1.7.1'