启动程序一次导致10个实例

我有一个旧的SUSE 8.1服务器,刚刚开始疯狂。

如果我一次启动一个程序:

/usr/local/jdk1.6.0_21/bin/java -cp example-ser-0.8.jar:/usr/local/lib/java/slf4j-api-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:/usr/local/lib/java/logback-classic-0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:/usr/local/lib/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/usr/local/lib/java/Translator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback.configurationFile=logback-test.xml example.ser.Scanner abc12345 

将会有10个实例运行(相同的用户,相同的参数),如ps ax -l | grep Scanner ps ax -l | grep Scanner

   FS UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
 000 S 502 20228 20227 0 75 0  -  98222 rt_sig pts / 11 0:00 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20229 20228 0 75 0  -  98222 schedule pts / 11 0:00 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20230 20229 0 75 0  -  98222 schedule pts / 11 0:14 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20231 20229 0 75 0  -  98222 scheduling pts / 11 0:01 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20232 20229 0 76 0  -  98222 rt_sig pts / 11 0:00 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20233 20229 0 76 0  -  98222 rt_sig pts / 11 0:00 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20234 20229 0 80 0  -  98222 rt_sig pts / 11 0:00 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20235 20229 0 75 0  -  98222 rt_sig pts / 11 0:00 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20236 20229 0 80 0  -  98222 rt_sig pts / 11 0:00 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 002 S 502 20237 20229 0 75 0  -  98222 schedule pts / 11 0:00 /usr/local/jdk1.6.0_21/bin/java -cp /usr/local/lib/java/example-ser-0.7.jar:/ USR / local / lib目录/ JAVA / SLF4J-API-1.6.1.jar:/usr/local/lib/java/logback-core-0.9.24.jar:在/ usr / local / lib目录/ JAVA /的logback-classic- 0.9.24.jar:/usr/local/lib/java/jcl-over-slf4j-1.6.1.jar:/usr/local/lib/java/commons-cli-1.2.jar:在/ usr / local / lib目录/java/commons-lang-2.5.jar:/usr/local/lib/java/mysql-connector-java-5.1.13-bin.jar:/usr/local/lib/java/xBaseJ-20091203.jar:/ usr / local / lib / java / CampaignRulesTranslator-0.7.0.jar:/usr/local/lib/java/antlr-3.2.jar:/usr/local/lib/java/joda-time-1.6.jar -Dlogback。 configurationFile = / usr / local / lib / java / logback.xml example.ser.Scanner abc12345
 000 S 0 25155 19094 0 80 0  -  406 pipe_w pts / 2 0:00 grep扫描器

如果我在开始该程序的terminal,所有10个消失。 这个程序不会做任何分叉或创build任何额外的线程。 在这个问题出现之前,我也尝试了几个这个程序的老版本,现在他们也都遇到了这个问题。 这里可能会发生什么?

程序本身可能不会fork,但是classpath中提供的libs / jar可能是分叉的,我首先会尝试检查这些fork的代码。 如果失败,尝试用不同的JVM版本和/或环境执行它,看看会发生什么。