设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7111|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: M& Y' s8 a9 S. z1 g( s/ H: F3 w
  l3 @; m) }) \* ?- |+ z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ m  _" Y# A# h- K0 V+ V2 o
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
  o* I8 \2 t. a% M4 h0 Q* P; xswarm.SignatureNotFoundException% W8 V! F3 S7 I$ N4 k( v; U
        at swarm.Selector.<init>(Selector.java:76)( R: @3 Q+ c) x- w
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). x+ Q7 j, }( e! h! N% ^% A
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- j8 w2 W# i, B6 e; w, S# x

8 |* G2 x# K" Y  `# [% f" k5 ?8 W# ^) W9 u  e3 P
import swarm.objectbase.SwarmImpl;
1 F: f! t) r& v9 |0 Dimport swarm.objectbase.Swarm;
& `( b9 d. ~3 N4 Z" \import swarm.activity.ScheduleImpl;
& N8 H4 o/ K3 h4 P0 c% @7 E: f8 }import swarm.activity.Activity;+ p0 q' M8 Q7 d$ u  _
import swarm.activity.ActionGroupImpl;# [7 `9 g: c8 [1 U$ n
import swarm.collections.ListImpl;
; o; L9 ], R/ ?8 P2 ]& B2 Yimport swarm.defobj.Zone;
9 ]( [8 `- L) W, e8 a( Fimport swarm.Globals;
5 F" f  T+ J( |$ pimport swarm.Selector;" p5 V$ p" U) h6 f
import swarm.activity.ActionGroup;
$ ~" x  Q8 B$ Kclass Agent {
9 p7 N$ m' y, ~$ \# `        char id;
9 J% [1 ^3 V* h: ?7 H3 N' u
! ^9 J1 _% ^" ]- t) ?        Agent(char id) {
; N" h9 L9 w/ x2 w9 s                this.id = id;
1 @( ^% O, Q1 [- n" _        }
2 o% L8 X$ y  E* }0 ]0 b- [5 N, t  r- Q* s2 G3 a+ K3 c
        public void agentStep() {. V2 J: P' N, k
                System.out.println(id + ":" + Globals.env.getCurrentTime());
' K4 w. s" T; q! w" u: B! G+ B, Z: t        }% }) c: d( B4 W* J0 L
}& Q) m2 m+ z: Q& [$ G
" N1 K% N5 \/ n( f5 O  g) ?8 y
public class ActionGroupDemo extends SwarmImpl {
/ O3 R8 ?7 F/ k& A. [) C: ]! j) |1 x: @/ P        ScheduleImpl schedule;% A! r! ]% I% q) h* V. V% [
        ActionGroupImpl actionGroup;6 n: W; M  f" h' j4 i
        ListImpl list;
4 x9 i. M6 m: H        char Id = 'a';
* b  B1 n$ U# m) p1 I. Q4 v+ u
$ a6 O9 H! g  y: w2 @% W* u        ActionGroupDemo(Zone aZone) {
; j$ {5 X# w7 O                super(aZone);
) b7 m( b9 D- E& }. l% r                list = new ListImpl(aZone);# t& }, i" s" a% H5 W
                swarmSetp();
% \+ o: q8 k' b9 ]+ k/ H                actionGroup = new ActionGroupImpl(aZone);) @3 P6 Y- h7 Z/ n
                schedule = new ScheduleImpl(aZone);
6 Y1 E, G) M+ k& n/ L  V                try {1 f* p4 P" Q3 h7 ~3 R
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ L/ G8 t$ A6 I1 X0 T                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ W. x; X+ z& s                        
: y1 A3 F8 e- _; {) H' Z                        actionGroup.createActionForEach$message(list, agentSel);
  x3 T5 O- t+ L0 `, M# D; I' {                        actionGroup.createActionTo$message(this, swarmSel);
+ |5 b5 ?8 K/ j. F$ t                        schedule.at$createAction(0, actionGroup);
, b2 g& S5 A0 ?7 @! ]9 v1 a                        schedule.at$createAction(1, actionGroup);
7 S5 x/ E# }% q& ?                        schedule.at$createAction(2, actionGroup);
% F5 V6 O7 s' R* |7 p! E) L6 D3 h2 X+ v4 ?+ H& V8 o
                } catch (Exception e) {
# X' g4 x5 N9 u# r                        e.printStackTrace(System.err);% x# n0 x- u# t8 l
                        //System.out.println(e);' O2 g8 O) ~" m
                        System.exit(1);% c- C& d# w8 X( H2 M
                }  w# f7 m* S- U! `0 W6 N

% f" M0 c" A/ I$ h) ~3 J
7 S+ z# C4 I2 j  U4 S        }
3 c& z3 E5 g6 b- ?. w* B0 u& }' {
+ `* m6 y9 Y" ~. ~7 D        private void swarmSetp() {
) u4 P' p- T# A, k7 U4 k                list.addLast(new Agent(Id));: q$ f/ \# v, t8 q1 b; i
                Id++;
/ I* q8 w1 K$ D+ M, Y        }) x1 a" e/ h& ?+ g9 l4 s

1 p7 m+ @; X. q        public Activity activateIn(Swarm context) {
  Y  y' y0 k8 E% v2 b+ f                super.activateIn(context);
0 e' A; f+ `6 @) g8 {                schedule.activateIn(this);. ~, c8 P$ S9 e. Q. F
                return getActivity();5 u5 ]: C2 r; v/ S
        }
! U+ n0 e( L# D# J, W- _: Y- F! z8 ^9 Z! \5 T- b8 d* R& r
        public static void main(String[] args) {
" g7 _# K% {3 ~  e7 ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 S. {- V* g- _# m6 q4 \! @                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 c+ N: L7 G: t* K! Q8 d9 }. G                swarms.buildObjects();
2 w6 Y( S3 s1 k3 D0 P( R: i                swarms.buildActions();, F# A! H& E9 E+ O' f
                swarms.activateIn(null).run();
$ v0 g. H& \, f* V2 e        }) a% \1 ^, i- G$ _, p' N1 h2 e
) `% g8 C! ?3 V% @1 a- @6 y' o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-19 18:24 , Processed in 0.015494 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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