lawrencehj
2021-06-22 b11c57d4b5c9c3b62e2cbea0672d8b5b0235f966
修正打包jar后snap路径问题,兼容windows路径
1个文件已修改
21 ■■■■ 已修改文件
src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/impl/PlayServiceImpl.java
@@ -24,7 +24,6 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
@@ -32,13 +31,11 @@
import org.springframework.web.context.request.async.DeferredResult;
import javax.sip.ClientTransaction;
import javax.sip.Dialog;
import javax.sip.header.CallIdHeader;
import javax.sip.message.Response;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.UUID;
@SuppressWarnings(value = {"rawtypes", "unchecked"})
@Service
public class PlayServiceImpl implements IPlayService {
@@ -97,7 +94,20 @@
        result.onCompletion(()->{
            // 点播结束时调用截图接口
            try {
                String path = ResourceUtils.getURL("classpath:").getPath()+"static/static/snap/";
                String classPath = ResourceUtils.getURL("classpath:").getPath();
                // System.out.println(classPath);
                String path = classPath + "static/static/snap/";
                if(classPath.contains("jar")) {
                    classPath = classPath.substring(0, classPath.lastIndexOf("."));
                    classPath = classPath.substring(0, classPath.lastIndexOf("/"));
                    path = classPath + "/snap/";
                }
                if (path.startsWith("file:")) {
                    path = path.substring(path.indexOf(":") + 1, path.length());
                }
                if(System.getProperty("os.name").contains("indows")) {
                    path = path.substring(1, path.length());
                }
                String fileName =  deviceId + "_" + channelId + ".jpg";
                ResponseEntity responseEntity =  (ResponseEntity)result.getResult();
                if (responseEntity != null && responseEntity.getStatusCode() == HttpStatus.OK) {
@@ -109,7 +119,6 @@
                        zlmresTfulUtils.getSnap(flvUrl, 5, 1, path, fileName);
                    }
                }
                System.out.println(path);
            } catch (FileNotFoundException e) {
                e.printStackTrace();