小编kos*_*tja的帖子

是否有用于隐写术的Java库?

通过库我的意思是使用就绪.jar分布.

图像隐写就足够了.使用JPEG,PNG和BMP也足够了.

谷歌没有产生可用的结果 - 主要是解释和指南,但没有图书馆.

java steganography

8
推荐指数
1
解决办法
5638
查看次数

是否有使用自定义比较器的 retainAll() 实现?

我需要根据其他集合的内容筛选集合。通常,我会使用该Collection.retainAll()方法。

不幸的是,我正在处理的域对象的相等性相当不稳定,这取决于比较上下文。因此,我不能依赖equals/hashCode.

我的下一个反应是使用 custom Comparator,但我找不到任何支持我的想法的方法。实现功能不是问题,但我想在这里重新发明轮子。

我是否遗漏了 API 中的某些内容?也欢迎其他框架(不太深奥),如 commons。
如果没有,什么优化会使我的简单实现(通过遍历 n^2 中两个集合的所有项目来创建两个集合中的所有对象的列表)成为一个好的实现?

java collections filter comparator

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

为什么不能用Java注释所有语句?

我天真地试图做一个简单的问题:

public void someMethod(){    
  int x = 0;
  ...
  @SuppressWarnings({"rawtypes", "unchecked"})
  x = ((Comparable)lhs).compareTo(rhs);
  ...
}
Run Code Online (Sandbox Code Playgroud)

这是非法的,必须改写为编译:

public void someMethod(){  
  ...  
  @SuppressWarnings({"rawtypes", "unchecked"})
  int x = ((Comparable)lhs).compareTo(rhs);
  ...
}
Run Code Online (Sandbox Code Playgroud)

我已经将问题追溯到ElementType:一个语句似乎不是一个有效的程序元素.这是相当混乱的 - 我认为语句类似于所有编程元素的超类型.

  1. 是否存在限制有效元素的理论或技术原因?

  2. 它可以用不同的方式完成 - 也就是说我可以ElementType用我自己的班级取代并掌握涟漪变化,我可以诠释任何陈述吗?

java annotations element

7
推荐指数
2
解决办法
4723
查看次数

如何使用Future [M [_]]的免费monad

我使用免费monad为ETL过程实现了一种简单的语言.当List用作数据获取和存储的输入和输出时,一切正常.但是,我正在使用异步库并使用Future[List]

常见的进口和定义

import scala.concurrent.Future
import scala.concurrent.ExecutionContext.Implicits.global
import cats.free.Free
import cats.free.Free._

sealed trait Ops[A]
type OpsF[A] = Free[Ops, A]
Run Code Online (Sandbox Code Playgroud)

与...合作 List

case class Fetch(offset: Int, amount: Int) extends Ops[List[Record]]
case class Store(recs: List[Record]) extends Ops[List[Response]]

def fetch(offset: Int, amount: Int): OpsF[List[Record]] = 
    liftF[Ops, List[Record]](Fetch(offset, amount))
def store(recs: List[Record]): OpsF[List[Response]] = 
    liftF[Ops, List[Response]](Store(recs))

def simpleEtl(offset: Int, amount: Int): Free[Ops, List[Response]]  = 
    fetch(offset, amount).flatMap(r => store(r))
Run Code Online (Sandbox Code Playgroud)

没有合作 Future[List]

case class Fetch(offset: Int, amount: Int) extends Ops[Future[List[Record]]]
case class Store(recs: List[Record]) …
Run Code Online (Sandbox Code Playgroud)

scala monad-transformers free-monad scala-cats

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

在哪里可以找到支持的Collection方法/类的概述

我试图找到java.util包返回支持的集合(和映射)的所有方法的概述.唯一容易找到的是synchronizedXXimmutableXX.但还有其他人喜欢subMap().是否有更方便的方法来了解util返回支持集合的所有方法,而不是实际阅读文档?视觉概述可能吗?

http://download.oracle.com/javase/tutorial/collections/implementations/wrapper.html上的包装类教程(已经提出两次作为答案)忽略了NavigableSet/Map接口,因此没有提供返回支持的集合的方法概述

java collections

6
推荐指数
1
解决办法
552
查看次数

在ant构建期间进行代码修改的最佳实践

承认,这听起来并不是最佳做法,但让我解释一下.在构建期间,我们需要将构建号和系统版本粘贴到一个类中,该类的唯一目的是包含这些值并使它们可访问.

我们的第一个想法是使用系统属性,但由于部署环境的波动性(另一种说法是"系统管理员正在做奇怪的邪恶的令人毛骨悚然的东西"),我们希望对它们进行硬编码.

基本上我看到了在蚂蚁中实现它的4种可能性:

  1. <replace>在类中使用令牌

    这种方法的问题是文件被更改,所以你必须在编译后用<replaceregexp>... 替换令牌,因为丑陋,我不想用正则表达式触摸源代码.加上时间依赖性.

  2. 复制文件,复制副本,编译副本,删除副本

    一个人必须记住序列 - 必须先编译原始类才能被副本覆盖.时间依赖性也很难看.

  3. 复制文件,替换原件上的令牌,编译,用副本替换染色的原件

    除非嵌入在编译目标中,否则相同的时间依赖性问 这也是丑陋的,因为我们所有的构建文件都使用相同的导入编译目标.

  4. 在构建脚本中从头开始创建文件/将文件存储在源路径之外

    由于没有时间依赖性,因此对前三个进行了改进,但编译器/ IDE非常不满意,因为它忽略了类.红色标记令人不安地丑陋.

您对替代方案有何看法?

对此有什么最佳做法吗?

我当然希望我错过了一个完美的方法.

谢谢

编辑 我们最终使用清单将构建号和系统版本存储在Implementation-Version属性中,没有用MyClass.class.getPackage().getImplementationVersion().我发现这个解决方案是这个帖子的答案之一,由andersoj发表在评论中

java ant build-process build

6
推荐指数
1
解决办法
2920
查看次数

SVN结帐失败,"块分隔符无效" - 可以做什么?

在checkout(http://aima-java.googlecode.com/svn/trunk/)的中间,客户端停止并显示错误,确切的错误消息显示为:

org.tigris.subversion.javahl.ClientException: RA layer request failed svn:REPORT of '/svn/svn/vcc/default': Chunk delimiter was invalid

我用Google搜索了错误但无法找到解决方案.我现在唯一知道的是,问题是由不兼容的svn版本引起的.

我从常规的ubuntu repo中使用svn 1.6.12.该错误可以通过多个客户端(使用Eclipse和RabbitVCS进行测试)重现,因为它们都使用相同的后端.

关于如何处理这个问题的任何建议都会在将来避免吗?

谢谢

eclipse linux svn version-control

6
推荐指数
1
解决办法
4252
查看次数

Maven错误:"更新Maven项目"

我已经使用Maven和Spring安装了Eclipse 32位EE但是当我使用Maven创建新项目时,我不断收到以下错误消息:

An internal error occurred during: "Updating Maven Project".
loader constraint violation: loader 
(instance of org/eclipse/osgi/internal/baseadaptor/DefaultClassLoader) 
previously initiated loading for a different type with name 
"org/apache/maven/project/MavenProject"
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助

eclipse spring maven

6
推荐指数
1
解决办法
4155
查看次数

使用引用git revisions/references的花括号失败

我想从stash中检出一个文件:

git checkout stash@{0} -- some/file
Run Code Online (Sandbox Code Playgroud)

这失败了 fatal: invalid reference: stash@0

看起来花括号被淘汰了,但我不确定罪魁祸首.

存储修订就在那里.git stash list回报

stash@{0}: WIP on X
stash@{1}: WIP on Y
Run Code Online (Sandbox Code Playgroud)

我在zsh上使用git 1.9.1.

有没有办法防止这种大括号消除?

git shell zsh

6
推荐指数
1
解决办法
647
查看次数

有没有办法在PersistenceQuery中使用快照

PersistentView已在akka 2.4中弃用.文档建议切换到PersistenceQuery.但是,PersistenceQuery似乎仅限于事件日志,没有查询快照存储的功能.

从大量事件中恢复状态需要一些时间,因此使用快照的能力对我来说很重要.

折旧是否超过了它的时间?我应该继续工作PersistentView还是我错过了什么?如何仅使用快照处理快照PersistenceQuery

谢谢

scala akka akka-persistence

6
推荐指数
1
解决办法
239
查看次数