osc用svn提交包含空目录解决办法
2016-03-08 14:07
246 查看
在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
下载地址:createKeep.zip
Error: Commit failed (details follow):
Error: svn: E200015: Empty directories is not supported: /lib
在开源社区问答处看到有人建议在空文件夹下建一个空的文件.keep。根据此方法写了个自动处理的方法。
功能:遍历jar所在目录的所有文件夹,对空的文件夹创建.keep文件。
使用前提:要装jvm
使用方法:把 createKeep.jar放在要上传项目的目录下,上传前双击运行即可(本人只在win7上测试)。
CreateKeep.java
import java.io.File; import java.io.IOException; public class CreateKeep { public static final String packageFile = ".keep"; public static void main(String[] args) { String path = getRealPath(); File file = new File(path); try { traversalAllFolder(file); } catch (Exception e) { e.printStackTrace(); } } /** * 遍历当前文件夹下的所有文件夹,对空的文件夹创建.keep文件 * * @param dir * @throws Exception */ final static void traversalAllFolder(File dir) throws Exception { File[] fs = dir.listFiles(); int fsLength = fs.length; if (fsLength == 0) { createFile(dir.getAbsolutePath()); } else { for (int i = 0; i < fsLength; i++) { if (fs[i].isDirectory()) { try { traversalAllFolder(fs[i]); } catch (Exception e) { } } } } } /** * 创建.keep文件 * * @param folderPath * 路径名 */ public static void createFile(String folderPath) { String fileName = folderPath + "/" + packageFile; File file = new File(fileName); try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } /** * 获取当前jar包所在路径 * * @return */ public static String getRealPath() { String realPath = CreateKeep.class.getClassLoader().getResource("") .getFile(); java.io.File file = new java.io.File(realPath); realPath = file.getAbsolutePath(); try { realPath = java.net.URLDecoder.decode(realPath, "utf-8"); } catch (Exception e) { e.printStackTrace(); } return realPath; } }
下载地址:createKeep.zip
相关文章推荐
- 德勤:2016年科技、传媒和电信行业预测
- 区间的比较1 lexicographical_compare
- 调试子系统采集调试事件的方法和过程(1)
- java 通过反射获取调用类方法及属性
- POJ 3768 Repeater 较复杂 分形 题目
- C语言获取本机IP地址
- 10028---jsp中常用操作字符串的el表达式
- sqlite3在 C/C++ 程序中应用
- FastDFS分布文件系统
- RHEL 6.0使用CentOS yum源配置方法
- 相对路径,绝对路径
- SeaJs 初学
- 【慕课笔记】4-3 字节流之文件输出流FileOutputStream
- 【项目管理和构建】十分钟教程,eclipse配置maven + 创建maven项目(三)
- SPI通信总结
- 解决A/libc Fatal signal 11 (SIGSEGV)错误,这可能是目前最鲁棒的Android声音录制和播放封装库了
- EasyList China国内镜像
- BZOJ1315 : Ural1557Network Attack
- 滑动返回类库SwipeBackLayout的使用问题,解决返回黑屏,和看到桌面
- 通过rtf字符串往richTextBox中添加带有文字的表格