设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10935|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 `- r8 ]- `. E& `' }0 ~; T+ o: c9 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# t. j- O; K# D9 z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 Q7 ?0 E5 a* |2 P7 R2 G' Gswarm.SignatureNotFoundException
: J/ _  [' i: X, t4 H% q2 I        at swarm.Selector.<init>(Selector.java:76)- S4 N7 t4 c# ]) I" b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ E9 @: U/ M7 l
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  x" X- g+ t+ |- N
+ M% j' e2 W6 @0 }: t# n9 W3 F8 P5 X1 A, [
import swarm.objectbase.SwarmImpl;
4 \! U; Z7 w+ ?8 g0 D% e% pimport swarm.objectbase.Swarm;6 f% i' B: A2 G+ X6 g/ e9 _1 ?
import swarm.activity.ScheduleImpl;
! [" S% U6 P6 _- {" ]2 E- Timport swarm.activity.Activity;
$ }( d& ?6 Y( Z/ T- R  D$ B! C( jimport swarm.activity.ActionGroupImpl;
) v  B+ X% y9 O: e4 timport swarm.collections.ListImpl;
: ~1 i, b8 @9 }* J- C0 cimport swarm.defobj.Zone; + d6 A' o- ^& v2 R8 S& h+ l
import swarm.Globals;$ F; q: e+ y( V9 A. L+ G
import swarm.Selector;
* K1 c0 L- B7 n# }( q: gimport swarm.activity.ActionGroup; + `) E( B' ]; J' z# C% l2 u8 I8 P
class Agent {
' m6 N2 z, {: o        char id;5 W' \5 f+ W! s& y0 y
1 Q. q& P/ }! ^7 q9 l
        Agent(char id) {0 ]; [* u8 r8 C2 L- D+ k
                this.id = id;
$ |: p2 C" X6 ]0 _        }
6 q, e" F  B- g+ b
0 E" r+ m4 y$ W) \& s! }$ \0 ^  ]        public void agentStep() {# Q. j( I) r7 ]: ^5 ^0 P
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 v& ^; a+ C1 n2 Z9 z4 g        }
2 Z, L6 F6 j- Q}% }: f+ ~* e/ S4 U4 v5 x

7 M$ c) r! N# D- {6 Q. npublic class ActionGroupDemo extends SwarmImpl {9 c- l" u9 u! k. P. V/ Z
        ScheduleImpl schedule;
. w1 h, M1 m8 E        ActionGroupImpl actionGroup;
" `9 I, k3 D2 P! y: e4 Z        ListImpl list;
/ j# L- y6 J, _4 |8 l6 h        char Id = 'a';
* R0 ~8 G4 M" O
* c, M2 Q! E) R( F! h/ H! m        ActionGroupDemo(Zone aZone) {6 N% c) _: s9 j- p( H
                super(aZone);
- G( Z& t: ~; `5 b" n5 k- m4 Z                list = new ListImpl(aZone);
- X2 \/ D  x+ ^) l/ \7 n6 }- U                swarmSetp();+ f) b; h" Y4 \4 t
                actionGroup = new ActionGroupImpl(aZone);
  j( I: X2 `3 D( }                schedule = new ScheduleImpl(aZone);1 v% P$ ^- W! g, M
                try {
0 x2 G% F" |$ O% z# [                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& N7 N, j$ {: t- u3 M                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% w; w1 V! o  a+ R3 ?5 q7 Z; j, S
                        ( _. B* A7 ]$ y4 |' ?2 C. S9 S
                        actionGroup.createActionForEach$message(list, agentSel);6 }/ {6 d3 G: {0 {
                        actionGroup.createActionTo$message(this, swarmSel);$ A+ A  Z- R1 a
                        schedule.at$createAction(0, actionGroup);
, z* [1 u( S( s5 n6 e  R/ D& I                        schedule.at$createAction(1, actionGroup);! ~( V9 Y/ t4 S( S+ [) A2 K3 Z
                        schedule.at$createAction(2, actionGroup);
& h- Z* f% u7 G8 z$ B3 n( Q$ f, k" }% O4 }8 v% N* N/ E# b
                } catch (Exception e) {
. e/ A* `' j" H% Y  f% j* P                        e.printStackTrace(System.err);
# J2 J; |, {. K4 t                        //System.out.println(e);
0 M+ `  f( u. \# \! n                        System.exit(1);
$ U3 J7 E8 ?* N! c6 U) L$ I                }5 U3 k0 Z& R0 L) l& Q

0 a! A! [9 L+ _9 G7 D: Q) D- a' F  u! G  f# q7 f) _
        }
* v) i0 Z. [6 S" O% v8 B( `! Z+ o, _1 K3 t; U4 O
        private void swarmSetp() {6 c! N& v: k0 @! _& y
                list.addLast(new Agent(Id));3 P6 s% ^/ b3 D) Y! m$ G
                Id++;1 C, r3 _: K( r) Z2 Q0 S: E/ Z
        }1 O. c1 e3 ?* q; u9 ?# D/ }2 s1 I, H
2 o5 H0 O4 n1 o  a5 f- s0 _! V
        public Activity activateIn(Swarm context) {. @, f# R5 F" v9 w
                super.activateIn(context);
. E, ]+ t7 u1 d" E& Q6 F0 o                schedule.activateIn(this);. C$ f- X. e$ W! p
                return getActivity();* [. N) j% c5 o* p+ @8 L2 H
        }
/ c" @" N! W+ z  `3 Y* n4 ]4 s
- [  a; L: U" |1 G( ]$ t2 }        public static void main(String[] args) {  n% s" t/ b9 Q3 T1 Z3 l- b$ B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 k( S- V' s# Y9 m- r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( k# h! ~1 ~& G+ e; m3 a/ L# X                swarms.buildObjects();7 Z: h( ~& e% o
                swarms.buildActions();! y) Y( \/ H3 F5 m3 I+ I5 ~3 n
                swarms.activateIn(null).run();
; Y  L4 y' T% ^5 ?  \4 q" g        }! i& r1 p5 P9 s1 E
$ k4 I+ k, @" u5 T% ^4 q8 s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-6-28 04:23 , Processed in 0.013895 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表