设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9367|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : _5 X/ ?1 |: M) v. ^0 s
6 \" [; [; y% o3 `) |1 M7 \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 ]' M/ z- V$ U5 u. ~5 E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* F% y( V5 t4 c9 u6 ?1 o( c  a
swarm.SignatureNotFoundException
6 d. R# I7 s* _        at swarm.Selector.<init>(Selector.java:76)
+ M/ J6 n/ u8 o" w8 ~  \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- Y5 X$ V( }3 K* V# ?1 e        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 x9 |* p# N& Y! B9 J1 f
+ M' |8 K& z. W$ t
5 W: X) q4 o% \2 T
import swarm.objectbase.SwarmImpl;2 Y; T; Y# o  _( ^1 C
import swarm.objectbase.Swarm;
) }* s+ d( Y6 O/ Q! c" e. ximport swarm.activity.ScheduleImpl;
( K: O5 ~8 ]0 q% y5 B- mimport swarm.activity.Activity;/ g3 O* l, F$ t' ~3 D6 e* M
import swarm.activity.ActionGroupImpl;
4 M5 j4 }2 U/ b; eimport swarm.collections.ListImpl;
6 b. L  I+ D* Y) c, Pimport swarm.defobj.Zone;
4 V: e& A1 q6 b+ f8 c8 k# Timport swarm.Globals;
2 o5 k$ w0 p; W: timport swarm.Selector;6 M/ k" X. ]. w5 ~
import swarm.activity.ActionGroup;
" \5 U. H4 O8 y- b" k5 aclass Agent {8 m( P7 {7 W: j. R2 U
        char id;& [& X" X% Y6 j: K/ c" w

. C6 _) u* z: ~& }$ x  H        Agent(char id) {
, s& o4 m/ O) U8 d                this.id = id;
) g2 I  l0 y( N; g        }
5 `0 }, ?3 y9 P5 T. A7 t8 B( w
3 u0 s7 V  A7 w9 j        public void agentStep() {
- j( V! g& t: ]+ U/ y1 [/ l                System.out.println(id + ":" + Globals.env.getCurrentTime());
! `3 m: ^0 c! Z) R/ l3 J/ W        }0 p, i- Z$ o* F0 q' l/ Z
}
3 G/ ^- _2 y, g2 V- f. }% t8 V- |4 b$ D& J
public class ActionGroupDemo extends SwarmImpl {  }; R6 G# u8 j3 q5 r
        ScheduleImpl schedule;! I2 _2 E  R* e
        ActionGroupImpl actionGroup;, g- Q* Z& D$ K3 E
        ListImpl list;, Z% s6 v; ?' X6 a0 a, H/ e
        char Id = 'a';+ q: o; R, c: N. G0 Q

: S, m8 C& r0 G% Y4 w5 f  s" i; f        ActionGroupDemo(Zone aZone) {
( o4 q2 ^) ~* r. X' I                super(aZone);; h7 C# o  R5 i" ^, N! V
                list = new ListImpl(aZone);
* o& G0 w# G4 d$ Q0 O2 u* ?2 b                swarmSetp();
3 P+ s2 J  y( |; t& D" w5 q                actionGroup = new ActionGroupImpl(aZone);
& b; V2 d1 r; X                schedule = new ScheduleImpl(aZone);% d1 g1 A1 N! t. A
                try {
1 k, }$ [  o! M! v& E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; N. R1 G5 W: A0 f5 d" h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- \4 i9 L8 z7 Z, Q3 c" S4 F/ X2 o
                        
( V5 l0 L/ l9 l% U7 U                        actionGroup.createActionForEach$message(list, agentSel);( ^& Q$ B! e0 s& `! R2 W. b5 y
                        actionGroup.createActionTo$message(this, swarmSel);
  M- T  q1 R' L1 ], F8 K                        schedule.at$createAction(0, actionGroup);, z* X4 Z: [5 ]
                        schedule.at$createAction(1, actionGroup);8 @( s) H- F- b
                        schedule.at$createAction(2, actionGroup);
! I3 s# W  [; m; D/ x9 g/ w5 H1 K% ~  z0 V$ z7 R& E
                } catch (Exception e) {
9 R6 g# h7 l5 p                        e.printStackTrace(System.err);
/ O# D( p! h6 z& S4 h* D8 ]                        //System.out.println(e);
% |9 {7 q! r; ?& f+ H+ ]6 z                        System.exit(1);
, b9 X" g. O% z$ N2 W: R4 q                }
/ u& C1 d/ L5 D5 U; j4 b% f* b: @! j$ u7 A5 K" o

9 W7 y/ j+ g! n3 _4 ^/ \        }+ a6 S' d1 t1 E4 A' |

% M! `2 h! p. U" F+ A8 V2 p        private void swarmSetp() {$ N, [  R7 R/ [( w
                list.addLast(new Agent(Id));1 o4 P$ u) S# ]/ O3 `
                Id++;( R/ }) |6 J; v' m
        }1 ^0 P/ j! p2 Y' @  m% E

9 N% i3 \" L- q5 ~* E        public Activity activateIn(Swarm context) {
/ c+ K/ p+ x4 C% ^% F6 ~3 {                super.activateIn(context);4 G5 g: B7 h) K+ ^5 i( s6 I
                schedule.activateIn(this);
; j8 h" I! m$ ]! |6 R                return getActivity();& \; a) V& b  b2 p' Y2 b2 J: G3 E
        }% [' ^9 \8 K5 m* A3 v3 y
5 S: ?* J0 r0 r8 ^
        public static void main(String[] args) {
+ X2 \; T) o3 K! a* e                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 ^& w2 f3 H; i% p& b2 |8 b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* P4 ?/ m+ D+ M
                swarms.buildObjects();2 g* z& C* m/ }, B6 M( O9 m
                swarms.buildActions();
( {; H4 g6 U) E. m: ^                swarms.activateIn(null).run();
2 B+ C" U2 m7 h        }
! ^- m! F/ y) g; J4 a5 b' d; b3 \8 u3 y6 Z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-10 06:13 , Processed in 0.019629 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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