ADD failed: file not found in build context or excluded by .dockerignore: stat mqtt-uav-0.0.1-SNAPSHOT.jar: file does not exist
时间: 2025-02-09 22:15:30 浏览: 56
这个错误信息通常出现在使用Docker构建镜像时,提示找不到指定的文件。具体来说,`ADD failed: file not found in build context or excluded by .dockerignore: stat mqtt-uav-0.0.1-SNAPSHOT.jar: file does not exist` 意味着在构建Docker镜像时,Docker无法找到`mqtt-uav-0.0.1-SNAPSHOT.jar`文件。以下是可能的原因和解决方法:
1. **文件路径错误**:
- 确认你在`Dockerfile`中指定的文件路径是正确的。文件应该位于Docker构建上下文(build context)中。
2. **文件不存在**:
- 确认`mqtt-uav-0.0.1-SNAPSHOT.jar`文件确实存在于构建上下文目录中。
3. **.dockerignore文件**:
- 检查`.dockerignore`文件,确保没有排除掉`mqtt-uav-0.0.1-SNAPSHOT.jar`文件。
4. **构建上下文错误**:
- 确认你运行`docker build`命令时的当前目录是正确的,即构建上下文目录。
例如,假设你的项目结构如下:
```
project/
│
├── Dockerfile
├── mqtt-uav-0.0.1-SNAPSHOT.jar
└── .dockerignore
```
在`Dockerfile`中,你应该这样写:
```dockerfile
FROM openjdk:11-jre-slim
COPY mqtt-uav-0.0.1-SNAPSHOT.jar /app.jar
ENTRYPOINT ["java", "-jar", "/app.jar"]
```
然后在项目根目录下运行:
```sh
docker build -t your-image-name .
```
如果`mqtt-uav-0.0.1-SNAPSHOT.jar`文件不在项目根目录下,你需要调整`Dockerfile`中的路径或者在正确的目录下运行`docker build`命令。
阅读全文
相关推荐



















