Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用oracle服务器JRE 8在docker中运行java可以';无法找到或加载主类_Java_Docker_Gradle - Fatal编程技术网

使用oracle服务器JRE 8在docker中运行java可以';无法找到或加载主类

使用oracle服务器JRE 8在docker中运行java可以';无法找到或加载主类,java,docker,gradle,Java,Docker,Gradle,我正在尝试使用官方的oracle serverjre映像在docker中运行java应用程序。我使用gradle构建它(构建得很好),然后构建docker容器(也很好),但当我尝试启动它时,它会显示“main-server|1 |错误:无法访问jarfile/main server.jar”。目前,应用程序只包含一个main方法,其中包含println Dockerfile: FROM store/oracle/serverjre:8 WORKDIR /home COPY ./build/li

我正在尝试使用官方的oracle serverjre映像在docker中运行java应用程序。我使用gradle构建它(构建得很好),然后构建docker容器(也很好),但当我尝试启动它时,它会显示“main-server|1 |错误:无法访问jarfile/main server.jar”。目前,应用程序只包含一个main方法,其中包含println

Dockerfile:

FROM store/oracle/serverjre:8
WORKDIR /home

COPY ./build/libs/main-server-1.0.jar /home/main-server.jar

ENTRYPOINT ["java", "-jar", "/main-server.jar"]
build.gradle:

apply plugin: "java"

version = "1.0"
jar {
    manifest {
        attributes (
            "Implementation-Title": "Main Server",
            "Implementation-Version": version,
            "Main-Class": "src/main/java.com.getsendus.server.Application"
        )
    }
}

repositories {
    maven {
        url "http://central.maven.org/maven2/"
    }
}

dependencies {
    compile "org.mongodb:mongodb-driver-async:3.9.0"

    compile "javax.servlet:javax.servlet-api:3.1.0" 
    testCompile "junit:junit:4.12"
    compile files("${System.getProperty('java.home')}/../lib/tools.jar")
}
Application.java:

package com.getsendus.server;

public class Application {

    public static void main(String[] args) {
        System.out.println("Main Server Running");
    }
}
从docker up登录(docker compose--详细备份主服务器):

compose.config.config.find:使用配置文件:./docker-compose.yml
docker.utils.config.find_config_文件:尝试路径:['/Users/robertwork/.docker/config.json','/Users/robertwork/.dockercfg']
docker.utils.config.find_config_文件:在路径:/Users/robertwork/.docker/config.json处找到文件
docker.auth.load_config:找到“auths”部分
docker.auth.parse_auth:https://index.docker.io/v1/ 他缺席了。客户端可能正在使用凭据存储。
docker.auth.load_config:找到“credstore”节
urllib3.connectionpool.\u发出请求:http://localhost:None “GET/v1.25/version HTTP/1.1”200 568
compose.cli.command.get_客户端:docker compose版本1.22.0,构建f46880f
docker py版本:3.4.1
CPython版本:3.6.4
OpenSSL版本:OpenSSL 1.0.2o 2018年3月27日
compose.cli.command.get_客户端:Docker base_url:http+docker://localhost
compose.cli.command.get_客户端:Docker版本:平台={'Name':''},组件=[{'Name':'Engine','version':'18.06.1-ce','Details':{'ApiVersion':'1.38','Arch':'amd64','BuildTime':'2018-08-21T17:29:02.000000000+00:00','Experimental':'true','GitCommit':'e68fc7a','GoVersion':'go1.10.3','KernelVersion':'4.9.93-linuxkit-aufs','MinAPIVersion':'1.12','Os':'linux'}],版本=18.06.1-ce,ApiVersion=1.38,MinAPIVersion=1.12,GitCommit=e68fc7a,GoVersion=go1.10.3,Os=linux,Arch=amd64,KernelVersion=4.9.93-linuxkit-aufs,实验=True,构建时间=2018-08-21T17:29:02.000000000+00:00
compose.cli.verbose\u proxy.proxy\u callable:docker inspect\u network{'Attachable':True,
'ConfigFrom':{'Network':'''},
“ConfigOnly”:False,
“容器”:{},
“创建”:“2018-11-08T09:34:21.230596Z”,
“司机”:“驾驶台”,
“EnableIPv6”:False,
'IPAM':{'Config':[{'Gateway':'172.18.0.1','Subnet':'172.18.0.0/16'}],
“驱动程序”:“默认值”,
“选项”:无},
...
compose.cli.verbose_proxy.proxy_可调用:docker信息{'Architecture':'x86_64',
“BridgeTables”:True,
“BridgeNfIptables”:对,
"CPUSet":对,,
“CPUShares”:没错,
“CgroupDriver”:“cgroupfs”,
“ClusterAdvertised”:“,
“ClusterStore”:“,
'ContainerCommit':{'Expected':'468a545b9edcd5932818eb9de8e72413e616e86e',
“ID”:“468a545b9edcd5932818eb9de8e72413e616e86e”,
...
compose.cli.verbose\u proxy.proxy\u callable:docker inspect\u network{'Attachable':True,
'ConfigFrom':{'Network':'''},
“ConfigOnly”:False,
“容器”:{},
“创建”:“2018-11-08T09:34:21.230596Z”,
“司机”:“驾驶台”,
“EnableIPv6”:False,
'IPAM':{'Config':[{'Gateway':'172.18.0.1','Subnet':'172.18.0.0/16'}],
“驱动程序”:“默认值”,
“选项”:无},
...
compose.cli.verbose\u proxy.proxy\u可调用:docker容器(包含0项的列表)
compose.cli.verbose\u proxy.proxy\u可调用:docker容器(包含0项的列表)
compose.cli.verbose\u proxy.proxy\u可调用:docker容器(包含1项的列表)
compose.cli.verbose_proxy.proxy_可调用:docker inspect_容器{'AppArmorProfile':'',
'Args':['-jar','/main server.jar'],
'Config':{'ArgsEscaped':True,
“AttachStderr”:False,
“AttachStdin”:错误,
“AttachStdout”:错误,
“Cmd”:无,
“域名”:“,
'Entrypoint':['java','-jar','/main server.jar'],
'Env':['路径=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
...
compose.cli.verbose_proxy.proxy_可调用:docker inspect_image{'Architecture':'amd64',
“作者”:“,
“评论”:“,
'Config':{'ArgsEscaped':True,
“AttachStderr”:False,
“AttachStdin”:错误,
“AttachStdout”:错误,
“Cmd”:无,
“域名”:“,
'Entrypoint':['java','-jar','/main server.jar'],
...
compose.cli.verbose\u proxy.proxy\u可调用:docker容器(包含1项的列表)
compose.cli.verbose_proxy.proxy_可调用:docker inspect_image{'Architecture':'amd64',
“作者”:“,
“评论”:“,
'Config':{'ArgsEscaped':True,
“AttachStderr”:False,
“AttachStdin”:错误,
“AttachStdout”:错误,
“Cmd”:无,
“域名”:“,
'Entrypoint':['java','-jar','/main server.jar'],
...
compose.cli.verbose_proxy.proxy_可调用:docker inspect_容器{'AppArmorProfile':'',
'Args':['-jar','/main server.jar'],
'Config':{'ArgsEscaped':True,
“AttachStderr”:False,
“AttachStdin”:错误,
“AttachStdout”:错误,
“Cmd”:无,
“域名”:“,
'Entrypoint':['java','-jar','/main server.jar'],
'Env':['路径=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
...
compose.parallel.feed_队列:挂起:{}
compose.parallel.feed_队列:启动的生产者线程
正在启动sendusserverworkspace\u主服务器\u 1。。。
compose.parallel.feed_队列:挂起:{}
compose.parallel.feed_队列:启动的生产者线程
compose.cli.verbose\u proxy.proxy\u可调用:docker attach
compose.cli.verbose\u proxy.proxy\u可调用:docker start None
正在启动sendusserverworkspace\u主服务器\u 1…完成
compose.parallel.feed_队列:挂起:set()
compose.parallel.parallel\u execute\u iter:已完成处理:
compose.parallel.feed_队列:挂起:set()
正在连接到sendusserverworkspace\u主服务器\u 1
compose.cli.verbose\u proxy.proxy\u可调用:docker事件
compose.cli.verbose\u prox
compose.config.config.find: Using configuration files: ./docker-compose.yml
docker.utils.config.find_config_file: Trying paths: ['/Users/robertwork/.docker/config.json', '/Users/robertwork/.dockercfg']
docker.utils.config.find_config_file: Found file at path: /Users/robertwork/.docker/config.json
docker.auth.load_config: Found 'auths' section
docker.auth.parse_auth: Auth data for https://index.docker.io/v1/ is absent. Client might be using a credentials store instead.
docker.auth.load_config: Found 'credsStore' section
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/version HTTP/1.1" 200 568
compose.cli.command.get_client: docker-compose version 1.22.0, build f46880f
docker-py version: 3.4.1
CPython version: 3.6.4
OpenSSL version: OpenSSL 1.0.2o  27 Mar 2018
compose.cli.command.get_client: Docker base_url: http+docker://localhost
compose.cli.command.get_client: Docker version: Platform={'Name': ''}, Components=[{'Name': 'Engine', 'Version': '18.06.1-ce', 'Details': {'ApiVersion': '1.38', 'Arch': 'amd64', 'BuildTime': '2018-08-21T17:29:02.000000000+00:00', 'Experimental': 'true', 'GitCommit': 'e68fc7a', 'GoVersion': 'go1.10.3', 'KernelVersion': '4.9.93-linuxkit-aufs', 'MinAPIVersion': '1.12', 'Os': 'linux'}}], Version=18.06.1-ce, ApiVersion=1.38, MinAPIVersion=1.12, GitCommit=e68fc7a, GoVersion=go1.10.3, Os=linux, Arch=amd64, KernelVersion=4.9.93-linuxkit-aufs, Experimental=True, BuildTime=2018-08-21T17:29:02.000000000+00:00
compose.cli.verbose_proxy.proxy_callable: docker inspect_network <- ('sendusserverworkspace_default')
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/networks/sendusserverworkspace_default HTTP/1.1" 200 578
compose.cli.verbose_proxy.proxy_callable: docker inspect_network -> {'Attachable': True,
 'ConfigFrom': {'Network': ''},
 'ConfigOnly': False,
 'Containers': {},
 'Created': '2018-11-08T09:34:21.230596Z',
 'Driver': 'bridge',
 'EnableIPv6': False,
 'IPAM': {'Config': [{'Gateway': '172.18.0.1', 'Subnet': '172.18.0.0/16'}],
          'Driver': 'default',
          'Options': None},
...
compose.cli.verbose_proxy.proxy_callable: docker info <- ()
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/info HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker info -> {'Architecture': 'x86_64',
 'BridgeNfIp6tables': True,
 'BridgeNfIptables': True,
 'CPUSet': True,
 'CPUShares': True,
 'CgroupDriver': 'cgroupfs',
 'ClusterAdvertise': '',
 'ClusterStore': '',
 'ContainerdCommit': {'Expected': '468a545b9edcd5932818eb9de8e72413e616e86e',
                      'ID': '468a545b9edcd5932818eb9de8e72413e616e86e'},
...
compose.cli.verbose_proxy.proxy_callable: docker inspect_network <- ('sendusserverworkspace_default')
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/networks/sendusserverworkspace_default HTTP/1.1" 200 578
compose.cli.verbose_proxy.proxy_callable: docker inspect_network -> {'Attachable': True,
 'ConfigFrom': {'Network': ''},
 'ConfigOnly': False,
 'Containers': {},
 'Created': '2018-11-08T09:34:21.230596Z',
 'Driver': 'bridge',
 'EnableIPv6': False,
 'IPAM': {'Config': [{'Gateway': '172.18.0.1', 'Subnet': '172.18.0.0/16'}],
          'Driver': 'default',
          'Options': None},
...
compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=False, filters={'label': ['com.docker.compose.project=sendusserverworkspace', 'com.docker.compose.oneoff=False']})
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/containers/json?limit=-1&all=0&size=0&trunc_cmd=0&filters=%7B%22label%22%3A+%5B%22com.docker.compose.project%3Dsendusserverworkspace%22%2C+%22com.docker.compose.oneoff%3DFalse%22%5D%7D HTTP/1.1" 200 3
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items)
compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=False, filters={'label': ['com.docker.compose.project=sendusserverworkspace', 'com.docker.compose.oneoff=False']})
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/containers/json?limit=-1&all=0&size=0&trunc_cmd=0&filters=%7B%22label%22%3A+%5B%22com.docker.compose.project%3Dsendusserverworkspace%22%2C+%22com.docker.compose.oneoff%3DFalse%22%5D%7D HTTP/1.1" 200 3
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items)
compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=sendusserverworkspace', 'com.docker.compose.service=main-server', 'com.docker.compose.oneoff=False']})
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/containers/json?limit=-1&all=1&size=0&trunc_cmd=0&filters=%7B%22label%22%3A+%5B%22com.docker.compose.project%3Dsendusserverworkspace%22%2C+%22com.docker.compose.service%3Dmain-server%22%2C+%22com.docker.compose.oneoff%3DFalse%22%5D%7D HTTP/1.1" 200 1123
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 1 items)
compose.cli.verbose_proxy.proxy_callable: docker inspect_container <- ('3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a')
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/containers/3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a/json HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker inspect_container -> {'AppArmorProfile': '',
 'Args': ['-jar', '/main-server.jar'],
 'Config': {'ArgsEscaped': True,
            'AttachStderr': False,
            'AttachStdin': False,
            'AttachStdout': False,
            'Cmd': None,
            'Domainname': '',
            'Entrypoint': ['java', '-jar', '/main-server.jar'],
            'Env': ['PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
...
compose.cli.verbose_proxy.proxy_callable: docker inspect_image <- ('sendusserverworkspace_main-server')
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/images/sendusserverworkspace_main-server/json HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker inspect_image -> {'Architecture': 'amd64',
 'Author': '',
 'Comment': '',
 'Config': {'ArgsEscaped': True,
            'AttachStderr': False,
            'AttachStdin': False,
            'AttachStdout': False,
            'Cmd': None,
            'Domainname': '',
            'Entrypoint': ['java', '-jar', '/main-server.jar'],
...
compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=sendusserverworkspace', 'com.docker.compose.service=main-server', 'com.docker.compose.oneoff=False']})
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/containers/json?limit=-1&all=1&size=0&trunc_cmd=0&filters=%7B%22label%22%3A+%5B%22com.docker.compose.project%3Dsendusserverworkspace%22%2C+%22com.docker.compose.service%3Dmain-server%22%2C+%22com.docker.compose.oneoff%3DFalse%22%5D%7D HTTP/1.1" 200 1123
compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 1 items)
compose.cli.verbose_proxy.proxy_callable: docker inspect_image <- ('sendusserverworkspace_main-server')
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/images/sendusserverworkspace_main-server/json HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker inspect_image -> {'Architecture': 'amd64',
 'Author': '',
 'Comment': '',
 'Config': {'ArgsEscaped': True,
            'AttachStderr': False,
            'AttachStdin': False,
            'AttachStdout': False,
            'Cmd': None,
            'Domainname': '',
            'Entrypoint': ['java', '-jar', '/main-server.jar'],
...
compose.cli.verbose_proxy.proxy_callable: docker inspect_container <- ('3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a')
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/containers/3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a/json HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker inspect_container -> {'AppArmorProfile': '',
 'Args': ['-jar', '/main-server.jar'],
 'Config': {'ArgsEscaped': True,
            'AttachStderr': False,
            'AttachStdin': False,
            'AttachStdout': False,
            'Cmd': None,
            'Domainname': '',
            'Entrypoint': ['java', '-jar', '/main-server.jar'],
            'Env': ['PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
...
compose.parallel.feed_queue: Pending: {<Service: main-server>}
compose.parallel.feed_queue: Starting producer thread for <Service: main-server>
Starting sendusserverworkspace_main-server_1 ... 
compose.parallel.feed_queue: Pending: {<Container: sendusserverworkspace_main-server_1 (3611e7)>}
compose.parallel.feed_queue: Starting producer thread for <Container: sendusserverworkspace_main-server_1 (3611e7)>
compose.cli.verbose_proxy.proxy_callable: docker attach <- ('3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a', stdout=True, stderr=True, stream=True)
urllib3.connectionpool._make_request: http://localhost:None "POST /v1.25/containers/3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a/attach?logs=0&stdout=1&stderr=1&stream=1 HTTP/1.1" 101 0
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/containers/3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a/json HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker attach -> <docker.types.daemon.CancellableStream object at 0x10f7968d0>
compose.cli.verbose_proxy.proxy_callable: docker start <- ('3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a')
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
urllib3.connectionpool._make_request: http://localhost:None "POST /v1.25/containers/3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a/start HTTP/1.1" 204 0
compose.cli.verbose_proxy.proxy_callable: docker start -> None
Starting sendusserverworkspace_main-server_1 ... done
compose.parallel.feed_queue: Pending: set()
compose.parallel.parallel_execute_iter: Finished processing: <Service: main-server>
compose.parallel.feed_queue: Pending: set()
Attaching to sendusserverworkspace_main-server_1
compose.cli.verbose_proxy.proxy_callable: docker events <- (filters={'label': ['com.docker.compose.project=sendusserverworkspace', 'com.docker.compose.oneoff=False']}, decode=True)
main-server_1                 | Error: Unable to access jarfile /main-server.jar
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/events?filters=%7B%22label%22%3A+%5B%22com.docker.compose.project%3Dsendusserverworkspace%22%2C+%22com.docker.compose.oneoff%3DFalse%22%5D%7D HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker events -> <docker.types.daemon.CancellableStream object at 0x10f79f898>
compose.cli.verbose_proxy.proxy_callable: docker wait <- ('3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a')
compose.cli.verbose_proxy.proxy_callable: docker inspect_container <- ('3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a')
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/containers/3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a/json HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker inspect_container -> {'AppArmorProfile': '',
 'Args': ['-jar', '/main-server.jar'],
 'Config': {'ArgsEscaped': True,
            'AttachStderr': False,
            'AttachStdin': False,
            'AttachStdout': False,
            'Cmd': None,
            'Domainname': '',
            'Entrypoint': ['java', '-jar', '/main-server.jar'],
            'Env': ['PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
...
urllib3.connectionpool._make_request: http://localhost:None "POST /v1.25/containers/3611e777b560c95c63f90e9b779e7ed2c9cfef61c570210711e93ae58317048a/wait HTTP/1.1" 200 30
compose.cli.verbose_proxy.proxy_callable: docker wait -> {'Error': None, 'StatusCode': 1}
sendusserverworkspace_main-server_1 exited with code 1
apply plugin: "java"

version = "1.0"

repositories {
    maven {
        url "http://central.maven.org/maven2/"
    }
}

dependencies {
    compile "org.mongodb:mongodb-driver-async:3.9.0"

    compile "javax.servlet:javax.servlet-api:3.1.0" 
    testCompile "junit:junit:4.12"
    compile files("${System.getProperty('java.home')}/../lib/tools.jar")
}

jar {
    manifest {
        attributes (
            "Implementation-Title": "Main Server",
            "Implementation-Version": version,
            "Class-Path": configurations.compile.collect { it.getName() }.join(' '),
            "Main-Class": "com.getsendus.server.Application"
        )
    }
}