小编mat*_*t b的帖子

Easymock:捕获的顺序是否重要?

这似乎是关于Easymock的一个非常详细的问题,但我很难找到这个库的支持站点/论坛/邮件列表.

我在使用captures()似乎不按顺序返回捕获的参数的方法时遇到了一个错误.

这是我正在测试的简化版本:

public class CaptureTest extends TestCase {

    // interface we will be mocking
    interface Processor {
            void process(String x);
    }

    // class that uses the interface above which will receive the mock
    class Component {

        private Processor processor;

        private String[] s = { "one", "two", "three", "four" };

        Component(Processor processor) {
            this.processor = processor;
        }

        public void doSomething() {
            for (int i = 0; i < s.length; i++) {
                processor.process(s[i]);
            }
        }
}

    public void testCapture() …
Run Code Online (Sandbox Code Playgroud)

java easymock mocking

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

将第三方库安装到托管Maven存储库的最佳实践?

假设您有一个使用第三方库的项目,例如Google的Analytics Data API(gdata),它似乎当前没有部署到任何知名或流行的Maven公共存储库/索引中.这不是什么大问题,因为我可以将工件部署到我的本地托管的Nexus存储库中.

但是,Maven社区中是否有任何最佳实践,我应该如何命名这个库在我的POM中的"坐标",因为标准尚未在公共存储库中设置呢?

例如,我应该在我的POM中引用它

<dependency>
    <groupId>com.google</groupId>
    <artifactId>gdata-analytics</artifactId>
    <version>1.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

还是有一些更好/更标准的方式让我想出来artifactId

(而且,为什么像谷歌这样的几十家图书馆的提供商不会花费一些精力将它们托管到主流的公共Maven存储库/索引中呢?这不会让人们更容易使用它们从而驱动它们采用?)

java maven-2

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

mvn release:prepare没有抓到我修改过的文件?

针对本地托管的VisualSVN服务器实例在Windows系统上运行.我有C:\Program Files\VisualSVN Server\bin我的PATH变量,所以我可以简单地从命令行运行svn命令.

我正在尝试准备并在我的Windows工作站上执行发布,我注意到我release:prepare似乎错过了我修改文件的事实:

C:\Documents and Settings\...\workspace\project>svn status  
M       pom.xml
M       src\main\java\company\blah\SomeFile.java
Run Code Online (Sandbox Code Playgroud)

然而,当我运行mvn release:prepare时,它似乎没有注意到我修改过的文件,并且尝试检查新的POM并标记版本:

[INFO]验证没有本地修改...
[INFO]执行:cmd.exe/X/C"svn --non-interactive status"
[INFO]工作目录:C:\ Documents and Settings\blah\workspace\project-blah
[INFO]检查快照的依赖项和插件......
"Project BLAH"的发布版本是什么?(com.vapps:project-blah)0.0.1 ::
什么是"Project BLAH"的SCM发布标签或标签?(com.vapps:project-blah)project-blah-0.0.1 ::"BLAH项目
"的新开发版本是什么?(com.vapps:project-blah)0.0.2-SNAPSHOT ::
[INFO]转换'Project BLAH'
......
......
[INFO]全程运行将检入1个文件,并带有消息:'[maven -release-plugin]为下一次开发迭代做准备'

(注意,此输出来自运行-DdryRun=true,但我得到相同的结果)

有没有人知道为什么mvn release:prepare我缺少本地修改过的文件?可能是在Windows上运行的一些尴尬组合?

更新:似乎与插件的此错误有关scm.

java svn maven-2 maven-plugin

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

JPA多个持久性单元错误

我正在尝试在我的项目中添加一个数据库/模式/ persistenceUnit,我收到错误:

No unique bean of type [javax.persistence.EntityManagerFactory] is defined: expected single bean but found 2

我谷歌/ api分配,无法找到为什么春天抱怨我的配置.

这是我的applicationContext.xml的一部分

  <bean id="entityManagerFactory" 
        class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">

        <property name="dataSource" ref="dataSource" />
        <property name="persistenceUnitName" value="transactionManager" />
        <property name="jpaVendorAdapter">
            <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
                <property name="showSql" value="${show.hibernate.sql}" />
                <property name="generateDdl" value="false" />
                <property name="databasePlatform" value="org.hibernate.dialect.MySQL5Dialect" />
            </bean>
        </property>
    </bean>

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="${database.driver}" />
        <property name="url" ...
        <property name="testOnBorrow" value="true" />
    </bean>

    <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
        <property name="entityManagerFactory" ref="entityManagerFactory" />
    </bean>

<bean id="entityManagerFactoryREST" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
    <property name="dataSource" ref="dataSourceREST" /> …
Run Code Online (Sandbox Code Playgroud)

java spring jpa multiple-databases

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

服务器端是否有用于验证用户提供的HTML的java库?

我有一个服务,它使用户提供的富文本(可以有HTML标签)并将其保存到数据库中.该数据被其他一些应用程序使用.但有时用户提供的数据缺少HTML标记和错误的结束标记.我想验证用户提供的数据是否是有效的HTML,具体取决于我要警告用户.

是否有任何Java库来进行HTML验证?

html java validation

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

Java初始化类而不重复自己

是否有可能更简洁地重写以下内容,我不必重复写this.x = x;两次?

public class cls{
    public int x = 0;
    public int y = 0;
    public int z = 0;

    public cls(int x, int y){
        this.x = x;
        this.y = y;
    }

    public cls(int x, int y, int z){
        this.x = x;
        this.y = y;
        this.z = z;
    }
}
Run Code Online (Sandbox Code Playgroud)

java

6
推荐指数
2
解决办法
218
查看次数

使用Jackson对数组进行反序列化

我有类似JSON-RPC客户端的东西,我无法将传入的json字符串反序列化为我的java对象.传入的json格式为:

{"value":"xxxx","type":"xxxx"}
Run Code Online (Sandbox Code Playgroud)

我想要反序列化的对象:

@JsonAutoDetect
@JsonDeserialize()
public class ReturnValue {

private Object value;
private String type;

@JsonCreator
public ReturnValue(@JsonProperty("value") String val, @JsonProperty("type") String type) {
    value = val;
    this.type = type;
}

...getters, setters...
Run Code Online (Sandbox Code Playgroud)

这似乎工作正常,如果值是String,但如果它是数组类型,它会抛出JsonMapping异常 - 无法反序列化java.lang.String的实例,因为json的START_ARRAY标记如下:

{\"value\":[8, 10], \"type\":\"[int]\"}
Run Code Online (Sandbox Code Playgroud)

代码是:

int[] arr = (int[])getReturnValue(jsonString).getValue();
Run Code Online (Sandbox Code Playgroud)

其中getReturnValue并不特别:

    ObjectMapper om = new ObjectMapper();
    ReturnValue rv = null;
    rv = om.readValue(json, ReturnValue.class);
    return rv;
Run Code Online (Sandbox Code Playgroud)

另一个问题是我希望type属性是Class类型,但这会抛出另一个映射异常.杰克逊有没有办法做到这一点,或者我必须自己从字符串转换为适当的类.谢谢你的任何建议.

java json jackson deserialization

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

Ubuntu集群管理

我试图找到一个管理一组Linux机器的解决方案(操作系统:Ubuntu,~40个节点.相同的硬件).这些机器应该是彼此的映像,安装在其中的软件需要安装在其他机器中.我的软件要求是hadoop,R和servicemix.所有机器上的R包也需要同步(安装在一个机器上的包需要在所有其他机器上可用)

我现在使用的一个解决方案是使用NFS和pssh.我希望有一个更好/更容易的解决方案,这将使我的生活更轻松.任何建议表示赞赏.

ubuntu hadoop r cluster-computing

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

安装MacPorts后找不到virtualenv命令

我通过Mac上的mac端口安装了python 2.7.我通过macports安装了virtualenv(py27-virtualenv @ 1.6.1_0(主动).当发出命令:virtualenv demo_venv --no-site-packages时,我收到此错误:-bash:virtualenv:command not found.它不是在挑选virtualenv up @ all,所以我需要将它符号链接到我的python27位置吗?

python macports virtualenv

6
推荐指数
2
解决办法
9682
查看次数

WICKET:如何获取客户端的IP /地址

我正在使用wicket 1.5.1,无法弄清楚这一点.

public class MyPage extends WebPage {

public MyPage() {

    String clientAddress = ...?
Run Code Online (Sandbox Code Playgroud)

java ip wicket

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