设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5712|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 i0 H1 |* b- K0 _7 h& e& ^, V% e; Y' N
7 ], r1 x4 v; ^, p$ ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 D+ z) p$ r+ g0 X, S5 N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. a5 r. V5 P; p- b! l' O, c( jswarm.SignatureNotFoundException
' u% g; {/ M1 c" S8 l" i        at swarm.Selector.<init>(Selector.java:76)
: F! t" `; ?. F+ d  `; R        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: q( _+ O# g8 T2 r( s7 a+ w* I        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- X0 G9 Y* E, F8 i- g/ t$ v% w% {- I: H" D3 y

3 D7 _, B! l0 O+ b3 @: {% b" m' [import swarm.objectbase.SwarmImpl;2 \$ x  t9 i7 s% k" k& Y
import swarm.objectbase.Swarm;
5 @: W' x* j) Z3 f& Eimport swarm.activity.ScheduleImpl;/ w! f, Z" ?0 E. a8 ]
import swarm.activity.Activity;$ s6 X, O1 w! O3 d4 N# [
import swarm.activity.ActionGroupImpl;' U/ h) K& K" ^1 H
import swarm.collections.ListImpl;" x# p# t! [9 A! k+ ?; @7 w
import swarm.defobj.Zone; 2 u) n1 B; `# F& w
import swarm.Globals;9 {1 c+ F* E! {1 e9 z
import swarm.Selector;% S" p( W/ p. B% R; s; V
import swarm.activity.ActionGroup;
. f4 K) e# ?& H8 }% r  v. tclass Agent {
( F. Y8 j& ^+ o        char id;+ i0 Y6 E4 T% u& J

, p6 e- y; J' t        Agent(char id) {: m2 y0 S- V* l/ J% a
                this.id = id;
  H+ E" B/ q- ^3 k        }, P8 K, P& ^& d: r- G3 v4 I  H

3 W8 S$ q7 `1 l        public void agentStep() {
% f- I( a* B/ m5 j7 I0 s4 Y                System.out.println(id + ":" + Globals.env.getCurrentTime());4 n4 D  I7 c; O" g1 L- O+ @
        }' ~. K/ c4 B2 P6 r7 @
}# ?% d* {; o5 q9 R: b

0 ?) M! o- m' U3 ~7 ]. Q# @public class ActionGroupDemo extends SwarmImpl {
5 H( ?. @' Z& d7 _+ B2 z: W! P/ I        ScheduleImpl schedule;! _) q  l' k" N. p+ {
        ActionGroupImpl actionGroup;
. i* G% O8 F* D, v" H        ListImpl list;
; C/ N/ h4 r, @        char Id = 'a';
+ L$ {) t1 ?5 V: C# e, c4 k) @. N$ w  r; i/ i$ n2 r3 F) L; m* R
        ActionGroupDemo(Zone aZone) {
) a2 n& H0 {9 D4 P) E                super(aZone);
3 y( e1 G4 u, M: h3 I                list = new ListImpl(aZone);
) ]4 g3 K+ B8 E( O) s* _/ Q                swarmSetp();
/ B9 l; @2 a) r9 O  T* {                actionGroup = new ActionGroupImpl(aZone);
& H: ?* B' y! m4 M                schedule = new ScheduleImpl(aZone);7 k1 _: F1 ]8 k7 E2 v# o* `
                try {- s  g" i0 U0 ]/ \; w4 X& q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- X# K  O$ O! U+ y; h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) E* q# P7 K& W5 h
                        
; p6 b3 B" d& Q' n0 {  U4 E. V7 R                        actionGroup.createActionForEach$message(list, agentSel);
4 T( g6 w2 E" ^$ X$ v8 e                        actionGroup.createActionTo$message(this, swarmSel);
  J" M2 p7 E6 l                        schedule.at$createAction(0, actionGroup);
$ A; `" g$ ^" c* D2 C. A5 D                        schedule.at$createAction(1, actionGroup);
2 H6 }9 F! V0 [1 ~3 h                        schedule.at$createAction(2, actionGroup);
- X. Q# s; G/ \$ l# A# @. V6 A: V, O* w1 `  R. T
                } catch (Exception e) {
! [, y7 h( N& a6 T& h                        e.printStackTrace(System.err);. _# O! K4 w6 `/ ]' r
                        //System.out.println(e);7 G% l/ G8 g' S0 u) ~
                        System.exit(1);0 `7 `: T* F+ a4 T7 F$ i; Q' K) T% |
                }
) A3 ]# }- i7 `6 v- O. l+ E, L" u$ U; R' D. V. o! P3 X

8 D* ~+ ^$ r$ p4 M# Q  x8 R8 [        }
* U; k2 H2 o5 P0 T- v# p/ [6 O: z& a
. P( k+ E# l, A& q# z; }' B3 p# {        private void swarmSetp() {, F& \' \6 o/ L
                list.addLast(new Agent(Id));
- [6 H9 |( n; J7 B5 `9 h                Id++;7 I5 i, K, V6 e9 S
        }7 C- r4 y7 j1 O' H$ f
( {0 e; B0 {" z+ \
        public Activity activateIn(Swarm context) {0 I+ o2 Q6 o+ ], p
                super.activateIn(context);
! k4 u5 G1 s0 g8 P# L                schedule.activateIn(this);5 d4 ~) v3 `' K& ]
                return getActivity();5 X5 u5 y/ g$ q$ P# I2 b
        }
3 y0 W4 S' m. S, s$ D# e( \) u' q) q1 E2 a; \
        public static void main(String[] args) {
; |* o, l$ c/ s5 e6 {" E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 C- F( ^! W* @& U' b5 V                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- h6 Q! y/ T! i+ K1 j0 C- w
                swarms.buildObjects();
4 u  D6 r% p* a- N8 r/ U' W. z/ i                swarms.buildActions();2 n7 H) `& k  D& D4 f" c
                swarms.activateIn(null).run();
& i( }; _# N9 j, {) O' N        }
' o8 c! ~7 n9 o: y! h. U/ d6 e2 |5 l" g3 f. X) @% {0 j5 L
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-20 17:17 , Processed in 0.016479 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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