设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6164|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 ~, Z1 F$ E5 S; r
: w! o* i6 V! U* u3 }0 g9 X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) p4 a4 H7 C, `1 Q, I3 p: N
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 h0 {* P/ f' o8 ^8 S! uswarm.SignatureNotFoundException! V5 T: G# M4 C3 X+ R. j
        at swarm.Selector.<init>(Selector.java:76)
: c7 p# G2 t: y7 u8 M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 V- j7 v8 W( P$ ^) C* j: i        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. ]- _3 n7 s6 D7 \& q
$ v! i3 ]/ w( \0 {' l' D) G8 C! p0 S) Y/ m- J- s8 _
import swarm.objectbase.SwarmImpl;8 O; _/ ~& j- Y
import swarm.objectbase.Swarm;+ [- k$ M* K" L# O) l
import swarm.activity.ScheduleImpl;, b# U% J3 G" x, L
import swarm.activity.Activity;) L# I; D* E1 n. a
import swarm.activity.ActionGroupImpl;( I2 D) ?4 |, D; q; K2 h
import swarm.collections.ListImpl;2 l! G9 C. x8 A) V& k
import swarm.defobj.Zone; $ W  n- ]; r- x+ a: D
import swarm.Globals;) N6 L9 r8 {! L, H* G
import swarm.Selector;
5 K; G, B& M" s- x8 D& Cimport swarm.activity.ActionGroup; ' S+ I2 T) S  h( D8 B
class Agent {% t: |5 |+ s) Y) T$ h
        char id;- \* O( n: K1 O  I/ l3 Z. s2 v
" v/ h5 H7 M" N% M; e  I/ A% E* s
        Agent(char id) {
5 e. ?" O2 {2 |                this.id = id;
% w* ]6 ?. H. b& j        }  m- e' g* I0 `

6 J1 L) l+ u' {/ {5 D        public void agentStep() {& a# k) u3 O6 V3 n
                System.out.println(id + ":" + Globals.env.getCurrentTime());
' |6 ^" }9 }! K        }! a: k7 h2 l$ m2 j4 y* g& C7 U3 [5 V
}8 @5 j7 n. F% r

0 N! q! C) j6 k) J# {) ~6 _public class ActionGroupDemo extends SwarmImpl {. ^# C6 _9 w! ~& w! ]! H% p
        ScheduleImpl schedule;: H* x0 I2 \& k- L7 ^) I# ?  D
        ActionGroupImpl actionGroup;/ M2 y( ?) V! I* ?, ~; V
        ListImpl list;
/ ~; r% D' v2 k! G9 {/ m( p$ V2 Y        char Id = 'a';
: K& s* _/ I- ^& y* x* C7 G
6 I; }( `: @; O& b: ]        ActionGroupDemo(Zone aZone) {
$ ?7 g( w2 Y1 X( |! x0 k' C! K                super(aZone);
6 F1 R5 c  H/ N                list = new ListImpl(aZone);8 G: v( G: M2 F! h2 s8 E
                swarmSetp();* }9 ]$ V7 {! |8 d7 e8 P/ x' {6 W
                actionGroup = new ActionGroupImpl(aZone);, \3 C1 d0 B5 e" m% @9 t1 E
                schedule = new ScheduleImpl(aZone);
0 }- t- y# s3 h' ]                try {" c) t6 m) Z6 y' v
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 r- u7 s" E0 R0 \" h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  ^" ?+ z, H& F3 _* G+ _: h9 Y                        . H9 m! K  {9 v# H( W+ j
                        actionGroup.createActionForEach$message(list, agentSel);
0 [' n% {8 Z1 {. [, O7 H; ]                        actionGroup.createActionTo$message(this, swarmSel);# s& m7 k5 {+ `7 `4 c5 @
                        schedule.at$createAction(0, actionGroup);
8 r$ Y9 n) y. e7 m+ ~  g                        schedule.at$createAction(1, actionGroup);
- k3 O2 F* {3 g& X: D                        schedule.at$createAction(2, actionGroup);
) `$ p1 {: a. e  H0 f. i$ j# s% w) F9 ~) h
                } catch (Exception e) {' ^" c0 Z! O8 n$ z1 |
                        e.printStackTrace(System.err);) H3 {9 c6 C2 y3 x6 U# y5 D& E
                        //System.out.println(e);, t& n' v) n1 A1 n2 e
                        System.exit(1);. B" E. W) [% O: m6 c3 t
                }
* g; G" G5 w/ u! a6 ^. F  Q
8 \0 q* g/ e! o
" j! j! N6 m: R" G( n        }$ b- R2 n3 l: G) `/ J) m5 y9 p
4 @' B) N% `1 s" G: Q+ P+ u
        private void swarmSetp() {7 a0 I& J/ A& Z
                list.addLast(new Agent(Id));$ R2 F' s  }7 e6 b
                Id++;4 ?+ |6 R$ d- d* u8 e' E: ?, Q( G
        }
8 R3 g1 B, H0 }! m6 ?7 w* B1 R
5 A2 z' S! F  H/ n5 G        public Activity activateIn(Swarm context) {
; |9 A! T9 {. `. k  n$ }                super.activateIn(context);) n- s$ ^& e& l; X5 B
                schedule.activateIn(this);& |$ Q/ g0 }$ [' [* ]
                return getActivity();2 l, y0 b& P* g2 F+ V; x5 {6 [$ @  O' }
        }) P6 c! f' R7 n

' X1 z% g) W( M6 d        public static void main(String[] args) {$ d) i7 ?- J; _
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% v$ y) Q; k) b2 Y4 C0 P% b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 i" [! B! x. @& q( X6 _
                swarms.buildObjects();$ l6 [, r8 p6 a$ I1 Q
                swarms.buildActions();# i9 Q0 i6 [  N3 c: h* s
                swarms.activateIn(null).run();$ v  I+ x& s- Z6 ^
        }
4 \1 x- @- ?4 c" ]" ~, e
- t) X" u) G* y* L}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-20 00:52 , Processed in 0.021524 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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