小编Ro.*_*Ro.的帖子

线超出范围的Sonarqube扫描错误?

[07:43:57] W:[步骤1/1]错误:SonarQube扫描仪执行期间出错

[07:43:57] W:[第1/1步]错误:第523行超出文件src/main/java/com/company/package/File.java(行:522)

出于某种原因,Sonarqube报告了第523行的错误,但源文件中只有522行?

我在之前的文件中看到了这个,但是当我在它的末尾添加一个空行时,问题就消失了,这个文件的末尾已经有一个空行.

java sonarqube sonarqube-scan

17
推荐指数
2
解决办法
9104
查看次数

用JavaScript创建DIV图像(GIF/PNG)

我想知道是否有一个JavaScript库可以让我从DIV的内容生成一个Image.

基本上这是一些服务器端打印代码所必需的,它需要从浏览器打印背景.

我最终想要做的是将DIV内容编码为PNG格式,并通过打印操作发布编码数据.

任何想法,如果这是可能的?

[编辑]我所拥有的是一个地图应用程序,其中背景数据直接从图像服务器进入浏览器DIV(想想谷歌地图).div是我主要数据的背景.按下Print时,服务器会根据其知道的数据生成PDF,但对浏览器的后台数据一无所知.我真正喜欢的是能够以某种方式为服务器提供浏览器背景图像!

干杯,Ro

javascript image

9
推荐指数
1
解决办法
2万
查看次数

将ClassPathScanningCandidateComponentProvider与多个jar文件一起使用?

我正在寻找使用ClassPathScanningCandidateComponentProvider来查找我的JVM中特定类的子类.

我正在做的就是这里描述的内容:在运行时扫描Java注释

但是,当我从ant调用代码时,通过JMX bean我遇到了一个严重的问题.

我用搜索包调用:ClassPathScanningCandidateComponentProvider.findCandidateComponents:"com.mycompany"

但是,我的类路径中有多个jar文件包含以该包开头的类.Spring扫描完第一个后停止扫描(我知道这就像搜索java.lang.Object的sublasees一样,我在一个jar文件中获取所有类).

有没有办法告诉ClassPathScanningCandidateComponentProvider/Spring在第一个jar之后不要停止扫描?

干杯

java spring classloader

9
推荐指数
1
解决办法
7588
查看次数

检查Java文件==错误,不仅限于字符串

许多标准源代码检查工具(PMD,FindBugs,Checkstyles)都实现了"字符串平等"规则,其中比较字符串时==(或!=)的使用可以被检测并报告为错误.

我正在寻找(或配置!)类似的规则,该规则适用于我的API中的一组其他对象类型.

//Want to detect things like:
Instance a = ...;
Instance b = ...;
if ( a == b ) //Error here, not using a.equals(b)
Run Code Online (Sandbox Code Playgroud)

看看PMD和FindBugs没有明显(或简单)的方法来做到这一点,有没有人遇到这样的事情?

干杯,Ro

java equality equals

7
推荐指数
1
解决办法
190
查看次数

如何将18个字符串转换为唯一ID?

我有一个18字符串,我需要转换为一个独特的长(在Java中).示例字符串将是:AAA2aNAAAAAAADnAAA

我的String实际上是一个Oracle ROWID,因此可以根据需要进行细分,请参阅:http: //download-uk.oracle.com/docs/cd/B19306_01/server.102/b14220/datatype.htm#CNCPT713

生成的长数,(1)必须是唯一的,因为没有两个结果可以指向同一个数据库行和(2)必须是可逆的,所以我可以从长时间返回ROWID字符串?

有关使用算法的任何建议都将受到欢迎.

几年前的Oracle论坛问题:http://forums.oracle.com/forums/thread.jspa?messageID = 1059740

java algorithm hash

6
推荐指数
3
解决办法
4129
查看次数

将二进制数据插入MySQL(没有PreparedStatement)

我试图在不使用预准备语句的情况下将一些二进制数据插入MySQL数据库.这样做的原因是我将数千个语句连接成一次运行一次.(究竟MySQL转储和导入是如何工作的)

我已经尝试了以下语句,但都失败了:

INSERT INTO my_table VALUES(1,'g = F| }X ',2);

INSERT INTO my_table VALUES(1,CAST('g = F| }X 'ASBINARY),2);

INSERT INTO my_table VALUES(1,CONVERT('g = F| }X ',BINARY),2);

INSERT INTO my_table VALUES(1,BINARY'g = F| }X ',2)

我得到的错误是:

com.mysql.jdbc.MysqlDataTruncation:数据截断:第1行的列'binary_data'的数据太长

我用来执行语句的代码很简单:

.conn.createStatement()的executeUpdate(SQL);

PreparedStatements工作正常(但在这种情况下速度太慢)

数据库中的实际String I显示有点不同:

G =÷的|¸} X£I [

二进制视图:67 3d 81 f7 19 f3 46 7c b8 7d 58 8c 10 a3 ec 5b

Java字节:103,61,-127,-9,25,-13,70,124,-72,125,88,-116,16,-93,-20,91

这可能与编码有关吗?

任何提示都很多,Ro

java mysql jdbc

5
推荐指数
1
解决办法
8387
查看次数

在本地资源上同步时Java死锁?

我看到同一行代码中多个线程死锁的问题.我不能在本地或任何测试中重现问题,但是生产中的线程转储已经非常清楚地显示了问题.

我无法理解为什么线程会在下面的同步线上被阻塞,因为在调用堆栈或任何其他线程中的Object上没有其他同步.有没有人知道发生了什么,或者我怎么能重现这个问题(目前尝试15个线程都在循环中击中trim(),同时通过我的队列处理2000个任务 - 但无法重现)

在下面的线程转储中,我认为具有"锁定"状态的多个线程可能是Java Bug的一个表现形式:http://bugs.java.com/view_bug.do?bug_id = 8047816其中JStack报告线程处于错误状态.(我使用的是JDK版本:1.7.0_51)

干杯!

这是一个线程转储中的线程视图.....

"xxx>Job Read-3" daemon prio=10 tid=0x00002aca001a6800 nid=0x6a3b waiting for monitor entry [0x0000000052ec4000]
   java.lang.Thread.State: BLOCKED (on object monitor)
    at com.mycompany.collections.CustomQueue.remove(CustomQueue.java:101)
    - locked <0x00002aae6465a650> (a java.util.ArrayDeque)
    at com.mycompany.collections.CustomQueue.trim(CustomQueue.java:318)
    at com.mycompany.collections.CustomQueue.itemProcessed(CustomQueue.java:302)
    at com.mycompany.collections.CustomQueue.trackCompleted(CustomQueue.java:147)
    at java.util.concurrent.ThreadPoolExecutor.afterExecute(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

   Locked ownable synchronizers:
    - <0x00002aaf5f9c2680> (a java.util.concurrent.ThreadPoolExecutor$Worker)

"xxx>Job Read-2" daemon prio=10 tid=0x00002aca001a5000 nid=0x6a3a waiting for monitor entry [0x0000000052d83000]
   java.lang.Thread.State: BLOCKED (on object monitor)
    at com.mycompany.collections.CustomQueue.remove(CustomQueue.java:101)
    -  locked …
Run Code Online (Sandbox Code Playgroud)

java concurrency multithreading deadlock thread-safety

3
推荐指数
1
解决办法
817
查看次数