我已经从http://m2eclipse.codehaus.org/安装了m2eclipse插件.现在我想将它用作独立的构建工具,但我无法找到安装目录.任何人都可以帮助我吗?
组态
我在Ubuntu 12.04.3 LTS(GNU/Linux 3.8.0-29-generic x86_64)上设置了一个独立的HornetQ(2.4.7-Final)集群.该实例有16GB RAM和2个内核,我已经为JVM分配了-Xms5G -Xmx10G.
以下是HornetQ配置中的地址设置:
   <address-settings>
      <address-setting match="jms.queue.pollingQueue">
         <dead-letter-address>jms.queue.DLQ</dead-letter-address>
         <expiry-address>jms.queue.ExpiryQueue</expiry-address>
         <redelivery-delay>86400000</redelivery-delay>
         <max-delivery-attempts>10</max-delivery-attempts>
         <max-size-bytes>1048576000</max-size-bytes>
         <page-size-bytes>10485760</page-size-bytes>
         <address-full-policy>PAGE</address-full-policy>
         <message-counter-history-day-limit>10</message-counter-history-day-limit>
      </address-setting>
      <address-setting match="jms.queue.offerQueue">
         <dead-letter-address>jms.queue.DLQ</dead-letter-address>
         <expiry-address>jms.queue.ExpiryQueue</expiry-address>
         <redelivery-delay>3600000</redelivery-delay>
         <max-delivery-attempts>25</max-delivery-attempts>
         <max-size-bytes>1048576000</max-size-bytes>
         <page-size-bytes>10485760</page-size-bytes>
         <address-full-policy>PAGE</address-full-policy>
         <message-counter-history-day-limit>10</message-counter-history-day-limit>
      </address-setting>
      <address-setting match="jms.queue.smsQueue">
         <dead-letter-address>jms.queue.DLQ</dead-letter-address>
         <expiry-address>jms.queue.ExpiryQueue</expiry-address>
         <redelivery-delay>3600000</redelivery-delay>
         <max-delivery-attempts>25</max-delivery-attempts>
         <max-size-bytes>1048576000</max-size-bytes>
         <page-size-bytes>10485760</page-size-bytes>
         <address-full-policy>PAGE</address-full-policy>
         <message-counter-history-day-limit>10</message-counter-history-day-limit>
      </address-setting>
      <!--default for catch all-->
      <!-- delay redelivery of messages for 1hr -->
      <address-setting match="#">
         <dead-letter-address>jms.queue.DLQ</dead-letter-address>
         <expiry-address>jms.queue.ExpiryQueue</expiry-address>
         <redelivery-delay>3600000</redelivery-delay>
         <max-delivery-attempts>25</max-delivery-attempts>
         <max-size-bytes>1048576000</max-size-bytes>
         <page-size-bytes>10485760</page-size-bytes>
         <address-full-policy>PAGE</address-full-policy>
         <message-counter-history-day-limit>10</message-counter-history-day-limit>
      </address-setting>
   </address-settings>
Run Code Online (Sandbox Code Playgroud)
还有10个其他队列绑定到通配符指定的默认地址.
问题
在一段时间内,Direct ByteBuffer内存的大小逐渐增加,甚至占用交换空间,最终抛出OutOfMemoryError("直接缓冲内存").
我已经尝试了很多JVM和JMS调优但是徒劳无功.即使为JVM指定-XX:MaxDirectMemorySize = 4G也会导致早期的OOME出于同样的原因.似乎没有读取ByteBuffer或者GC没有声明未引用的内存.
以前有人遇到过同样的问题吗?
欢迎任何建议,并提前感谢.
我记得在一些Java书中读到除了'instanceof'之外的任何运算符,用于比较两个对象之间的类型层次结构.
instanceof是最常用和最常见的.我无法清楚地记得是否确实存在另一种做法.
我正在建立一个基于solr搜索的重复数据删除系统,该系统将返回与搜索条件匹配的搜索结果.我使用dataimport处理程序从数据库中提取数据并在Solr服务器上创建索引文档.
我的solr架构如下:
<field name="customer_id" type="int" indexed="true" stored="true" required="true" />
<field name="fname" type="phonetic" indexed="true" stored="true" />
<field name="lname" type="phonetic" indexed="true" stored="true"/>
<field name="address" type="text_en" indexed="true" stored="true" />
<field name="city" type="string" indexed="true" stored="true"  />
<field name="state" type="string" indexed="true" stored="true"  />
<field name="zipcode" type="string" indexed="true" stored="true"  />
<field name="telephone" type="string" indexed="true" stored="true"  />
Run Code Online (Sandbox Code Playgroud)
如上所示,我已使用DoubleMetaphoneFilterFactory将名字(fname)和姓氏(lname)字段的类型指定为拼音搜索的语音.语音字段类型的描述如下:
<fieldtype name="phonetic" stored="false" indexed="true" class="solr.TextField" >
  <analyzer>
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.LowerCaseFilterFactory" />
    <filter class="solr.NGramFilterFactory" minGramSize="1" maxGramSize="15" side="front"/>
    <filter class="solr.DoubleMetaphoneFilterFactory" inject="true"/>
  </analyzer>
</fieldtype>
Run Code Online (Sandbox Code Playgroud)
我希望我的搜索返回与所有指定查询字段匹配的文档,而不仅仅是任何一个搜索字段.
我的问题是,如果我单独搜索fname,lname或地址,那么结果非常相关,但是当我使用过滤查询和主搜索查询时,结果包含来自两个搜索条件的结果的并集.
请有人指出我做错了什么.此外,是否有任何最佳实践要记住为银行的这种重复数据删除系统设计solr模式,以便识别重复的客户记录.
提前致谢!!
我有一个TestThis.java像以下Java文件:
class A
{
    public void foo() 
    {
        System.out.println("Executing foo");
    }
}
class B
{
    public void bar()
    {
        System.out.println("Executing bar");
    }
}
Run Code Online (Sandbox Code Playgroud)
上面的代码文件编译正常,没有任何警告/错误.有什么方法可以访问任何类A或B没有任何其他外部类的顶级类?
如果不是那么为什么Java甚至允许在没有顶级类的情况下编译这些文件呢?