Maven 插件

Maven 本质上是一个插件框架,它的核心并不执行任何具体的构建任务,而是将所有任务都交给插件来完成,例如编译源代码是由 maven-compiler-plugin 完成的。进一步说,每个任务对应了一个插件目标(goal),每个插件会有一个或者多个目标,例如 maven-compiler-plugin 的 compile 目标用来编译位于 src/main/java/ 目录下的主源码,testCompile 目标用来编译位于 src/test/java/ 目录下的测试源码。 maven-source-plugin [[maven-source-plug Read more ...

2018-07-09 maven , java , build , management , build-tool

Spring boot 笔记

Spring aims to make developer challenges easy, like creating web applications, working with databases, securing applications, and microservices. Spring Boot builds on top of Spring to make Spring even easier with simplified dependency management, automatic configuration, and run Read more ...

2018-07-06 spring-boot , spring , java , web

phpMyAdmin 登录无反应问题记录

今天遇到一个神奇的错误,登录 phpMyAdmin 无论如何都登录不进去,开始还以为密码记错了,但是再输入错误密码时,会显示错误的提示 #1045 - Access denied for user 'root'@'localhost' (using password: YES) 而在在我确认密码没有问题时,phpMyAdmin 的表现就像是登录成功过了,但是却没有跳转。 然后为了解决这个问题,修改过 php.ini 中的 session.save_path ,修改了 session 文件的 权限 chmod 777 /path/to/sessio Read more ...

2018-07-03 php , phpmyadmin , mysql , root , password , browser

Java 查漏补缺:线程间通信

wait notify 方法 wait() 是让当前执行代码的线程等待,wait() 是 Object 类的方法。在调用 wait() 方法前,线程需要获得对象级别锁,只能在同步方法或者同步块中调用,执行 wait() 方法后,当前线程释放锁。如果调用时没有持有适当锁,会抛出 IllegalMonitorStateException 异常。 方法 notify() 也需要在同步方法或者同步块中调用,同样调用前也需要获取对象锁。如果调用没有持有适当的锁,也会抛出 IllegalMonitorStateException 异常。notify() 方法永安 Read more ...

2018-07-02 java , linux , thread , synchronized

通过 WebDAV 连接 NextCloud

NextCloud 支持 WebDAV 协议,用户可以完全通过 WebDAV 来连接并同步文件。虽然官方还是推荐 使用客户端来同步文件,不过如果要临时访问 NextCloud 上的文件,使用 WebDAV 方式还是很便捷的。 假设 NextCloud 的地址是 example.com 这个,那么在 Linux 下,一般文件管理器中有连接到服务器的选项在其中,填入服务器 IP 地址,访问端口,然后访问地址填写 /remote.php/dav/files/[USERNAME] 输入该用户的用户名和密码即可访问该用户的所有文件列表。 如果要直接在文件管理器 Read more ...

2018-07-01 nextcloud , webdav , dav , sync , files , linux

每天学习一个命令:使用 jpegoptim 和 optipng 优化压缩图片

今天突然遇到一个问题,使用手机拍摄的照片 5+M 体积巨大,但是网易要求的图片大小需要小于 1M,所以就有了压缩图片的需求。记得很久以前使用过 TinyPNG 这个服务,但是唯一一点不好的就是无法脱离他在线的服务,需要把照片上传到他的网站上才能进行压缩。虽然有 tinypng-cli 这个命令行的工具,但其实也是依赖在线服务的。所以就找了一下,然后发现了 jpegoptim 和 optipng 这两个工具。 jpegoptim 安装 apt-get install jpegoptim 使用 jpegoptim file.jpg 然后使用 Read more ...

2018-06-30 compress , optimize , linux , command , jpeg , png

Java 查漏补缺之位运算符

今天在看 Kafka 源码 LongSerializer 时看到将 Long 型转 byte 数组的实现,感觉需要补习一下位运算符 (bitwise operator),所以有了这篇。 Java 提供的位运算符有: 左移 ( << )、右移 ( >> ) 无符号左移 ( <<<)、无符号右移 ( >>> ) 位与 ( & ) 位或 ( | ) 位非 ( ~ ) 位异或 ( ^ ) 除了位非 ( ~ ) 是一元操作符外,其它的都是二元操作符。 与或非,亦 Read more ...

2018-06-26 java , bit , operator , notes

Python Linux 系统管理与自动化运维读书笔记

小工具 HTTP Server python -m SimpleHTTPServer python -m http.server JSON 格式化 echo '<json string>' | python -m json.tool 验证第三方库安装 python -c "import paramiko" pip 用法 源码安装 python setup.py install pip 子命令 子命令 说明 search Read more ...

2018-06-24 python , linux , notes , deploy

威联通折腾篇七:定时任务

威联通的机器本来就是基于 Linux 定义的,所以想要定时任务就会想到 crontab,在威联通中使用 crontab 必须使用 SSH 登录。 然后基本使用 crontab -l 查看当前 qnap 中已经存在的定时任务。 在大多数桌面版 Linux 中会使用 crontab -e 来编辑 crontab 配置,但是注意不要在威联通中使用这种方法,威联通在重启的时候会覆盖使用这种方式写入的配置。如果想要永久的保存配置,应该使用 vi /etc/config/crontab 然后写入配置,比如 0 4 * * * /share/custom/ Read more ...

2018-06-23 qnap , qnap-tutorial , linux , crontab

douban 小组接口研究

豆瓣 curl -X GET \ 'https://frodo.douban.com/api/v2/group/622198/topics?count=30&sortby=new&os_rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&channel=Google_Market&udid=5e4159565b89f86cccda&_sig=YWtLhd6UEq%2Bh7xDWs%3D&_ts=1529656502' \ -H 'Cach Read more ...

2018-06-22 douban , api , app

最近文章

  • Google Agent2Agent 协议 什么是 AI Agent
  • Cursor Rules 为 AI 设限 我自己使用 Cursor 已经有一段时间了,Cursor 提供了非常好用的代码补全,以及代码生成功能,但是在使用的过程中难免也发现了一些问题,最近看到 Cursor 推出了这个 Cursor Rules,看到了官方尝试来解决一些问题,也正好以此契机来完整地介绍一下 Cursor Rule,给 AI 设定一些界限,规则,不让其过分地自由发挥以至于发生意想之外的错误。
  • Flutter 教程系列一: freezed 使用 不管在什么样的应用中,如果要处理大量的数据,不可避免的就是要定义大量的数据类用来装载和解析数据,在 Flutter 中也不例外,今天要介绍的这个 Freezed 库就是 Flutter 中用来作为数据类(data classes)代码生成的这样一款工具。
  • RAG 简介 什么是 RAG
  • Homerow 配置 macOS 全键盘操作 今天想要和大家分享一下一款非常有趣的应用,叫做 Homerow,他之前的名字叫做 vimac,是一款可以在 macOS 上实现全键盘操作的工具。