设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11015|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 p% Q" f' m" a% a; p

" n7 A- L; ~+ Q- s8 P  P, p) a8 f9 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- M2 ]) o, N* n( @& D0 l! C以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. F$ _! q! q* H3 k" s5 S
swarm.SignatureNotFoundException6 N# s/ M1 N8 T# z; H& U
        at swarm.Selector.<init>(Selector.java:76)
' X) n4 E" l8 |. B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ m5 e5 F1 ~. C$ v. v3 b5 ?        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 i' C& `+ f' A4 H; M
; f* B* y2 c8 J' I: q

/ k: c; z3 X  d, ]2 fimport swarm.objectbase.SwarmImpl;
9 \; z3 ^3 A4 z) T# w2 A+ Ximport swarm.objectbase.Swarm;+ K8 [. g' ]) H: r
import swarm.activity.ScheduleImpl;
- @7 m  |6 n9 m: a3 T$ `import swarm.activity.Activity;/ m9 A6 Q; T( ~- t
import swarm.activity.ActionGroupImpl;2 N9 w% A% C0 ^( Q$ K) Y
import swarm.collections.ListImpl;6 l8 N+ V* o4 B/ P
import swarm.defobj.Zone;
9 N1 w, y7 r' ~' I& o7 A0 c0 Yimport swarm.Globals;( t$ Q- Z: S7 Y0 R! P
import swarm.Selector;
8 F) m, t$ W. Zimport swarm.activity.ActionGroup; 1 n) M- b# b6 |
class Agent {8 F* _1 m7 R3 a0 k; \% I
        char id;5 n3 ^# c6 z0 R# h  G8 ~

, G' P- s4 o1 }2 }" `; U" {8 t' j        Agent(char id) {
+ E: L  S" ?2 ]! A0 s2 f: e9 I; a                this.id = id;+ Q% O9 f5 Z2 r1 D6 W0 {2 ^
        }' j, P% b  N' m7 l8 V5 P0 |
. E9 }" i  a* f% H
        public void agentStep() {
+ u& D( z8 U9 w; }6 F  V                System.out.println(id + ":" + Globals.env.getCurrentTime());0 \: J% N6 l8 T; S$ z
        }
: _8 m; z) s: P" Y( F5 X3 }) g! v* a}8 P( K8 m9 {' z2 U

9 g7 E+ f9 h- m0 }  S& cpublic class ActionGroupDemo extends SwarmImpl {8 ]2 h4 i( ^0 y& g) d) H
        ScheduleImpl schedule;) f0 E) b7 C$ G2 d7 F
        ActionGroupImpl actionGroup;7 l. Z  N+ F: E
        ListImpl list;3 ?4 K* y/ P) F& {7 h4 [+ @
        char Id = 'a';
, o7 X5 k9 Q6 V0 E0 M  {  W& y2 P, _' I; k! v' W, r& n4 _
        ActionGroupDemo(Zone aZone) {
: A  I  ]! f3 _' a: i- R/ @2 s3 D% a                super(aZone);' ^/ n: X* V% l1 E) Y# U8 q
                list = new ListImpl(aZone);
1 ?; s8 w/ I  a) H5 L                swarmSetp();
4 c8 H% q$ R$ Q) {/ ^) }6 f; T                actionGroup = new ActionGroupImpl(aZone);
, b) u; @+ U* _, D( L                schedule = new ScheduleImpl(aZone);( H; D" {5 u& j  W; ~9 n
                try {) v  f6 v4 ~/ l  l
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ ?% Z9 X: |; \4 H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; f: X. e0 K6 t7 p- T                        
1 l9 R0 m1 e% P9 P; p                        actionGroup.createActionForEach$message(list, agentSel);
% a9 r: W5 D5 A9 E( i1 x7 c/ G                        actionGroup.createActionTo$message(this, swarmSel);
; y% N: d/ P* O3 Q                        schedule.at$createAction(0, actionGroup);1 S0 W* a; M' G1 b
                        schedule.at$createAction(1, actionGroup);: q$ q8 \2 ]' p
                        schedule.at$createAction(2, actionGroup);
/ v: c+ R* P; b1 m+ w+ h+ Z6 @& z0 g# W% a* A- P& _/ k- m& A
                } catch (Exception e) {
* R9 J7 Q. l6 S6 h8 V6 B" ]                        e.printStackTrace(System.err);
& T0 \- F6 g. R+ f" b6 C$ y                        //System.out.println(e);
; d4 P, j* w; c$ c* v, x7 w                        System.exit(1);
0 ?" R# e+ d: m3 j& P% _( |- ]" t                }6 Z4 c) Z, \3 n+ M; w$ g' f! Z

0 e* |9 s, o2 ?  W' t- I
0 h7 ^" d* i2 W  Q" u" L        }3 r. l( F& F5 F! \2 c4 Y( n- b

" H2 j8 I3 o4 c6 m3 Y2 y! ^2 @/ k        private void swarmSetp() {. T8 I- i$ K1 A* ^/ o
                list.addLast(new Agent(Id));
' Y! T: v3 I3 k6 v" n3 {& q                Id++;
+ H- @& A$ W0 Y9 `5 C        }. }9 r9 b2 V0 S8 X( t

8 M5 r# i3 M' M5 u# E+ p" E        public Activity activateIn(Swarm context) {7 k# W, o, e! P2 y1 @( }4 j
                super.activateIn(context);2 T" c5 l& i! m) K) i: o; T. \
                schedule.activateIn(this);
& p! D0 O) C2 \3 i1 V* L- B1 X                return getActivity();  O) @8 N. Z2 y7 Z1 H0 R$ q7 W
        }# x3 K. V# f3 U5 Q
( w( C# s5 f4 j( S  n
        public static void main(String[] args) {
& F- L8 W9 q! z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);+ @" F6 A4 [. R- K- D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 E$ I, t# t2 C8 X                swarms.buildObjects();
$ m! l# b7 W( c5 }0 q7 F7 N                swarms.buildActions();$ ^3 x  K9 n8 ?/ m& W
                swarms.activateIn(null).run();6 g5 M' V) M2 K$ S( o0 J
        }. v; x1 h3 v3 ~' w/ M4 ?

1 [# A  L+ W4 b5 Q: m' E7 s2 ]$ X}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-30 11:05 , Processed in 0.015460 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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