设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6376|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% v- c) o- p+ z; Z9 R' D: q: N: v5 E; j! M" I
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# ?; j1 ?3 ~# W" C, `. ]; x) c* c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& b( B, o8 h6 m! U. ]" D
swarm.SignatureNotFoundException$ q9 b+ ^( x- l4 O1 l; G3 g2 L
        at swarm.Selector.<init>(Selector.java:76)
  ~/ A$ A: A5 v& C1 k7 M        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- }# v( e* r2 R" I& \6 E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)" S" |1 I% l5 a5 p3 K% I' }

: K+ [1 r/ C3 y# `/ }. e* T8 L
+ Q- }1 k7 Q& p6 a! i% O+ qimport swarm.objectbase.SwarmImpl;! ~- y+ s- E: z2 U1 ~# h9 b, x9 i
import swarm.objectbase.Swarm;
. e4 ^' d" v2 O7 u7 himport swarm.activity.ScheduleImpl;
5 V/ [+ |* j9 m- ^import swarm.activity.Activity;
0 ^0 e0 E9 u, S2 j3 O3 D9 iimport swarm.activity.ActionGroupImpl;) P/ Y) ?4 C; R) {
import swarm.collections.ListImpl;$ p7 r% H+ _' {( f. \% K2 M
import swarm.defobj.Zone; * X' |# a7 D4 O
import swarm.Globals;
, T1 x6 S% M" u$ S$ @; f1 Timport swarm.Selector;
) P0 q: G4 ?& U" r2 Q8 Dimport swarm.activity.ActionGroup;   N/ [7 p: o4 M# s% A! R
class Agent {
; x- F3 D8 H3 s  W8 T) i: ?        char id;: W2 R1 y7 t& L4 K( x7 V

3 s& ?. [) r! o( o! y6 e        Agent(char id) {
3 P- h( T7 \5 K                this.id = id;2 @: v$ d) N% d! O1 j
        }
% M( a; @6 u0 |8 L/ i9 B6 v2 p5 N, i  Y% A" I" K
        public void agentStep() {
: v! O1 ^0 N! b1 D$ d                System.out.println(id + ":" + Globals.env.getCurrentTime());0 U" |5 n9 V1 ]: \1 W& g0 N
        }
* G4 i) ~8 c% @! a7 Z9 S}
) D. y9 v8 U3 o' K: h6 y5 {9 z( l& F% i* b8 h5 L
public class ActionGroupDemo extends SwarmImpl {
" ~% F2 W( i4 B, {5 _( r( F- R        ScheduleImpl schedule;: t0 R3 m/ X( k; g' S
        ActionGroupImpl actionGroup;
* @! D, i* c. o        ListImpl list;; l  q5 N( m* N# D
        char Id = 'a';: s# W5 J4 j" l( v) d5 t

" W2 s) q9 `1 o! P2 w4 {        ActionGroupDemo(Zone aZone) {
& t* p! E  q" K7 g                super(aZone);
; K9 r" f% ]6 e                list = new ListImpl(aZone);
; v' o& y( P9 D! T7 v. E                swarmSetp();
6 j+ S2 J& X5 v) l, R5 c/ n                actionGroup = new ActionGroupImpl(aZone);7 ]' D7 `# K; B; N: d$ o8 q
                schedule = new ScheduleImpl(aZone);
4 ~9 Q+ D1 O$ \+ h                try {
- l$ H2 l4 b% Z# ~! \) S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 Z- C. _+ N* g
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 g" X# l9 t7 P7 \$ o
                        0 i% U5 [. t: o1 G
                        actionGroup.createActionForEach$message(list, agentSel);  P4 T) g- f5 E
                        actionGroup.createActionTo$message(this, swarmSel);) i* E( N1 y5 }9 A& g
                        schedule.at$createAction(0, actionGroup);2 G* u) }8 ?- H8 [. L0 ~
                        schedule.at$createAction(1, actionGroup);2 N( p4 P+ N5 I/ y7 ^; Q! _" Y" m. `
                        schedule.at$createAction(2, actionGroup);! b) |' y2 q6 C
; @2 \# l/ T7 _3 |4 P
                } catch (Exception e) {
1 N) N, e2 `; N: i3 `5 V8 f                        e.printStackTrace(System.err);; z$ c4 U. C; B/ N
                        //System.out.println(e);# N* m1 p6 {! S
                        System.exit(1);% d6 @$ @- Q% z0 \7 C- \
                }( L( |& T, b& q/ K

0 L& A5 e* V( C, K5 z1 X* W8 N7 m4 R
) ~8 i* x' F" m% A1 a        }  H  J% d/ j/ Z/ @3 H

* M1 M  |+ d0 f; C, k  B        private void swarmSetp() {! O5 Q8 h. o6 x! {
                list.addLast(new Agent(Id));9 Z2 }; R( K, l/ J
                Id++;
9 M- I$ c8 b0 J        }
3 a% P9 Q+ A( ^" z! L4 I; V
9 i$ g( m7 g/ |  {9 U6 J3 I) |$ I        public Activity activateIn(Swarm context) {6 g! }, Z0 ^0 g9 C
                super.activateIn(context);
8 Z0 I# t) a. T! N5 i3 `                schedule.activateIn(this);$ n$ [2 ], K' q2 R  I; _
                return getActivity();
6 e( q/ y  w" ]* a1 M        }
6 p0 a8 I; O& ]+ y- ?5 w9 o  w3 l
        public static void main(String[] args) {
5 S3 @+ C6 F' D) [$ W# q% o" K/ i* k( K                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 f2 K# u! v  H. `- g  O) u7 u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, w1 T- P2 J7 k% F: j: T/ U/ G, c. x! Y) k
                swarms.buildObjects();
4 X: h. E7 _+ {/ X  z7 P( Z                swarms.buildActions();
6 x; s. h! x0 R5 f                swarms.activateIn(null).run();
# P9 n4 N! G' }* T: A2 I        }' I! [" F; a$ u6 E) L

8 u. z; f; d  ~( ~3 x& q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-26 23:29 , Processed in 0.016980 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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