@Test
public void changePlistContent() throws Exception {

    String urlPrefix = "https://test.domain.com/package_ios";
    String name = "ReDx001";
    String version = "12345";
    String versionName = name + version;
    urlPrefix = urlPrefix + "/" + versionName + "/";
    String softwarePackageUrl = urlPrefix + "test.ipa";
    String displayImageUrl = urlPrefix + "Icon-57.png";
    String fullSizeImageUrl = urlPrefix + "Icon-512.png";
    String bundleIdentifierValue = "com.monkey.bean";
    String bundleVersionValue = "1.0.0.0";
    String titleValue = "测试标题";
    //方式1
      URL fileUrl = this.getClass().getClassLoader().getResource("manifest.plist");
      if (fileUrl == null) {
          return;
      }
      File originFile = new File(fileUrl.getPath());
    //方式2
      Resource resource = new ClassPathResource("manifest.plist");
      File originFile = resource.getFile();
    //方式3
      File originFile = ResourceUtils.getFile(ResourceUtils.CLASSPATH_URL_PREFIX + "manifest.plist");
      if (!originFile.exists()) {
          System.out.println("manifest.plist is not exist");
          return;
      }
    //方式4, 若读取的文件在tar包内, 读取文件报类似file:/data/xxx/xxx.jar!/BOOT-INF/classes!/xx.xx的错误, 此时以读取流的方式解决
    InputStream stream = IpaUtil.class.getClassLoader().getResourceAsStream("manifest.plist");
    File originFile = new File("/temp/manifest.plist");
    FileUtils.copyInputStreamToFile(stream, originFile);
    stream.close();
    String newFileParentPath = originFile.getParent() + File.separator + version;
    File parentDir = new File(newFileParentPath);
    if (!parentDir.exists()) {
        boolean createDir = parentDir.mkdir();
        if (!createDir) {
            System.err.println("parentDir create failed: " + parentDir);
            return;
        }
    }
    File aimFile = new File(newFileParentPath + File.separator + originFile.getName());
    IpaUtil.changePlistContent(originFile, aimFile, softwarePackageUrl, displayImageUrl, fullSizeImageUrl, bundleIdentifierValue, bundleVersionValue, titleValue);
}