osc用svn提交包含空目录解决办法

来源:互联网 发布:sql语句教程 pdf 编辑:程序博客网 时间:2024/06/07 01:43
在osc用svn提交项目代码的时候,发现项目包含空目录时会提交失败。
Error: Commit failed (details follow):  
Error: svn: E200015: Empty directories is not supported: /lib 


在开源社区问答处看到有人建议在空文件夹下建一个空的文件.keep。根据此方法写了个自动处理的方法。

功能:遍历jar所在目录的所有文件夹,对空的文件夹创建.keep文件。

使用前提:要装jvm

使用方法:把 createKeep.jar放在要上传项目的目录下,上传前双击运行即可(本人只在win7上测试)。


CreateKeep.Java

[java] view plain copy
  1. import java.io.File;  
  2. import java.io.IOException;  
  3.   
  4. public class CreateKeep {  
  5.   
  6.     public static final String packageFile = ".keep";  
  7.   
  8.     public static void main(String[] args) {  
  9.         String path = getRealPath();  
  10.         File file = new File(path);  
  11.         try {  
  12.             traversalAllFolder(file);  
  13.         } catch (Exception e) {  
  14.             e.printStackTrace();  
  15.         }  
  16.     }  
  17.   
  18.     /** 
  19.      * 遍历当前文件夹下的所有文件夹,对空的文件夹创建.keep文件 
  20.      *  
  21.      * @param dir 
  22.      * @throws Exception 
  23.      */  
  24.     final static void traversalAllFolder(File dir) throws Exception {  
  25.         File[] fs = dir.listFiles();  
  26.         int fsLength = fs.length;  
  27.         if (fsLength == 0) {  
  28.             createFile(dir.getAbsolutePath());  
  29.         } else {  
  30.             for (int i = 0; i < fsLength; i++) {  
  31.                 if (fs[i].isDirectory()) {  
  32.                     try {  
  33.                         traversalAllFolder(fs[i]);  
  34.                     } catch (Exception e) {  
  35.                     }  
  36.                 }  
  37.             }  
  38.         }  
  39.     }  
  40.   
  41.     /** 
  42.      * 创建.keep文件 
  43.      *  
  44.      * @param folderPath 
  45.      *            路径名 
  46.      */  
  47.     public static void createFile(String folderPath) {  
  48.         String fileName = folderPath + "/" + packageFile;  
  49.         File file = new File(fileName);  
  50.         try {  
  51.             file.createNewFile();  
  52.         } catch (IOException e) {  
  53.             e.printStackTrace();  
  54.         }  
  55.     }  
  56.   
  57.     /** 
  58.      * 获取当前jar包所在路径 
  59.      *  
  60.      * @return 
  61.      */  
  62.     public static String getRealPath() {  
  63.         String realPath = CreateKeep.class.getClassLoader().getResource("")  
  64.                 .getFile();  
  65.         java.io.File file = new java.io.File(realPath);  
  66.         realPath = file.getAbsolutePath();  
  67.         try {  
  68.             realPath = java.net.URLDecoder.decode(realPath, "utf-8");  
  69.         } catch (Exception e) {  
  70.             e.printStackTrace();  
  71.         }  
  72.   
  73.         return realPath;  
  74.     }  
  75.   
  76. }  

下载地址:createKeep.zip

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 宝宝感冒咳嗽流鼻涕出汗怎么办 养的小鸡总打架怎么办 小鸡一条腿瘸了怎么办 同窝小斗鸡打架怎么办 夏季羊长的慢怎么办 1岁吃母乳不吃饭怎么办 5个月宝宝黏妈妈怎么办 九个月宝宝不爱吃饭怎么办 20个月宝宝吐了怎么办 十个月的宝宝消化不好怎么办 两岁宝宝不爱喝水怎么办 两岁宝宝不爱喝水吃饭怎么办 两岁的宝宝不爱喝水怎么办 宝宝不爱吃饭不爱喝水怎么办 一多半宝宝爱喝水 不爱吃饭怎么办 1岁宝宝不爱吃饭喝水怎么办 两岁小宝宝不爱吃饭怎么办 4个月小宝宝咳嗽怎么办 3个月小宝宝咳嗽怎么办 2个月小宝宝咳嗽怎么办 8的岁儿童腿不直怎么办 作业盒子选错年级怎么办 两岁x型腿怎么办 绿萝叶子有水滴怎么办 打游戏变菜了怎么办 车被记号笔画了怎么办 水溶性彩铅受潮了怎么办 马克笔颜色涂深了怎么办 染发膏染眉毛了怎么办 用电容笔画画手有触感怎么办 CAD画图线性数字不居中怎么办 3d立体画笔堵塞怎么办 龋齿树脂填充老化后怎么办 小孩补过的牙疼怎么办 颜料弄到墙纸上怎么办 4岁的宝宝不爱涂色怎么办 oppo手机截图存不到相册怎么办 做的ih5保存不了怎么办 小偷偷东西发现后逃跑了怎么办? 网上有人传迷信诅咒怎么办 颜料粘在衣服上怎么办