设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6237|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; V) a! K: u3 O$ r

4 R6 w* y# G$ ?) j本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' D$ |' z. o/ k6 j( \# p' J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ A% S3 l; v2 Rswarm.SignatureNotFoundException
% G) D0 E" V7 w        at swarm.Selector.<init>(Selector.java:76)- V4 `8 e" M5 M/ q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 U- Q5 a: W' l: `0 c        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 D$ q2 e9 `, j9 v: D8 }3 {1 b
! I$ K. i, `8 Z0 p" e3 c% T

6 a! Y& |& c+ `+ |# }5 ]. gimport swarm.objectbase.SwarmImpl;! P0 a4 R/ ?$ e; U
import swarm.objectbase.Swarm;
. V/ r1 B0 _+ \, P9 S" oimport swarm.activity.ScheduleImpl;
  Z( M; o7 T8 g  Iimport swarm.activity.Activity;1 R& L0 g* m' W+ O$ q. {
import swarm.activity.ActionGroupImpl;1 r0 w. {# z. H, n; ?
import swarm.collections.ListImpl;3 M- C# `- t" G* p& q% \+ I5 Q* q
import swarm.defobj.Zone;
& N, S- F/ O7 g: ~  G- fimport swarm.Globals;
9 q- a* z5 w1 s( M% v5 |import swarm.Selector;) n, q1 M# b% S' u% n: G
import swarm.activity.ActionGroup;
% u1 V+ G3 g% u. b* O0 w/ ~class Agent {
7 `6 K7 l, d& y3 k) w        char id;
6 {8 W( R  o7 M! X/ F3 n* F; p; k" P
        Agent(char id) {6 k/ ^7 s) ?. ^% Y5 ?% D
                this.id = id;
5 S! ]  a3 p0 @3 `& l        }
" y. b8 f) H( \; m. s) M/ n
' t, l" V  W( z% w( L% O        public void agentStep() {
" Y3 c$ m" }+ E& V" ^6 {                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 ^; P: j5 e! D" |8 i5 N6 N        }
$ L3 c& q7 o0 k% n0 i0 }}
5 z: [6 i8 Z1 ]5 x- x
5 y9 a, T/ b0 ?+ C' u/ W/ f% wpublic class ActionGroupDemo extends SwarmImpl {$ k4 ^/ c9 W' a! r; \: |1 G) e
        ScheduleImpl schedule;1 `+ q7 o3 @) ?; M% t4 [
        ActionGroupImpl actionGroup;
% k4 ^2 d% V; j% M- T, Z        ListImpl list;7 `, y0 U4 @  j" ^) ?. l
        char Id = 'a';
7 E4 z; n. W/ c' J! J' z/ `
* E* g) a( h1 ^) c* E        ActionGroupDemo(Zone aZone) {& F7 K) v' S% Z; O) a0 U' x
                super(aZone);6 l2 S5 s5 h$ f+ c; G1 `0 k& E0 f
                list = new ListImpl(aZone);# h* g) ~$ W; h: [9 G
                swarmSetp();. r5 i8 y' g2 ^8 R, Y- u
                actionGroup = new ActionGroupImpl(aZone);4 D+ _# o. F$ E) D: z; e: t
                schedule = new ScheduleImpl(aZone);
; n$ I: |/ E  n+ ?                try {
  s$ @, }8 u5 E4 U3 U4 D9 ]) X                        Selector agentSel = new Selector(Agent.class, "agentStep", false);, e5 n# l8 ?; g! R
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. M( n9 p; B2 B0 W7 N3 O2 b                        
: ^$ A; D3 O! R' l" I* H                        actionGroup.createActionForEach$message(list, agentSel);
% u: D6 E3 N7 y" P, b                        actionGroup.createActionTo$message(this, swarmSel);
% r. J: L0 o* E) k7 J% ~% A  a0 ]                        schedule.at$createAction(0, actionGroup);
; @8 J! K1 d( Y! ^; M                        schedule.at$createAction(1, actionGroup);
, H  Y" ?2 H$ j0 c" x; Q, v4 `                        schedule.at$createAction(2, actionGroup);
- s. C, N( ^- T; y# E1 I3 ]7 V2 \% h1 K2 x3 g% ~! O- _
                } catch (Exception e) {% m, `1 X/ R, c. s
                        e.printStackTrace(System.err);6 s3 O+ g* i$ p. b' L
                        //System.out.println(e);
" G! X) {) J5 L5 h$ a                        System.exit(1);! X8 {( `( P9 s5 M# z7 e
                }; V7 _3 p! \5 w8 P& h* i7 l

0 Y# `0 a8 u, }) Q5 u
% p; E' l" {; p/ x6 Q% Z        }  d6 h' Y- u* O6 q7 j7 [
( M# t' D8 i6 Q# v* i- u$ g, j
        private void swarmSetp() {8 U# D& Q, `, ?- k" e! T
                list.addLast(new Agent(Id));  w. T! _' t. ]
                Id++;
+ g$ T" W" u) k( o1 ~2 D3 p        }
/ E2 d/ A( U+ g4 i& v( e) R5 q. F
3 Y( ^8 y, z7 n# z% I5 o0 v3 B1 M        public Activity activateIn(Swarm context) {
5 ]; I5 E+ f0 A! C                super.activateIn(context);) S/ {' R8 P0 G, X% S" U8 I, K
                schedule.activateIn(this);7 O" l0 U/ J6 ^! J" D+ I, R
                return getActivity();  Z& S; r) g% [1 ^2 s- r
        }
, }/ [% h' H2 j9 \
0 `+ ^6 e! K5 u2 t! B% T        public static void main(String[] args) {
3 B0 v6 i+ M% O+ w2 H3 _3 Z+ t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 s8 j8 J2 ~- E3 p! q
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  v; V) D) B: _( p
                swarms.buildObjects();
( w$ V  b& S; x3 n% O                swarms.buildActions();
$ [( P- P9 O  n- p, i                swarms.activateIn(null).run();
; P" V+ f" Y9 F) @) B' o" Y        }: d# {# Z7 [0 F/ e3 U

" T' {' _) X* T+ Y7 l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-22 09:57 , Processed in 0.020352 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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