设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6919|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% [2 e! X& H7 r9 [* g1 y2 [& k  O. Z8 J0 e1 G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' ^6 ~5 Y9 Q! X+ d* f4 J) {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ {* p- S: q. y. t1 V
swarm.SignatureNotFoundException
! ?8 K. e. E5 P* v        at swarm.Selector.<init>(Selector.java:76)2 G& G4 V) D; i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ R2 ?. E+ A  ]0 ]! Z
        at ActionGroupDemo.main(ActionGroupDemo.java:67)' M) i; [8 d& z+ i5 n

# d& g2 P" N! ?; P$ k$ x0 m$ ~. W' `) Z' O
import swarm.objectbase.SwarmImpl;
7 ^' v' g6 t4 Q) e! O$ e7 `1 x0 [import swarm.objectbase.Swarm;
, @' c! X8 H  A% ]7 J& b8 I( _# x5 ^import swarm.activity.ScheduleImpl;- P9 g% |8 ]& V# a1 {' b$ p
import swarm.activity.Activity;
3 ~; _. b; S7 L; ]. s; Iimport swarm.activity.ActionGroupImpl;* H/ B; O* g/ v
import swarm.collections.ListImpl;
- ]. G1 I+ }" {. O$ L# h! C% d0 `! Nimport swarm.defobj.Zone; * ?1 b  ?. Y+ G6 C2 K. s4 e( A
import swarm.Globals;
0 G) g- p& Z2 G7 ^+ T9 _; ~2 r4 L4 `import swarm.Selector;" h- H5 x6 u- Z7 X, |
import swarm.activity.ActionGroup; 9 E6 Z' `# u$ i! [) a
class Agent {
4 D$ x$ g8 x* ]& W2 d6 h        char id;
2 V. M& J) A" P! D! ]$ K5 a: r4 c5 e" ^7 n# P: K! O8 N
        Agent(char id) {' U: u8 K) U, j* h  o* f4 A9 Z
                this.id = id;8 R$ M$ m# m- x) |
        }
( a5 \+ j" R. I- W# e3 e* F% M* G& e+ U& u+ ~* e; S" g
        public void agentStep() {% J) f; {9 k7 S4 Q) o+ p; t
                System.out.println(id + ":" + Globals.env.getCurrentTime());; C, m" V/ Y. }
        }
$ D" s) C+ [. U6 I! A}  E& G" \) @/ C* t6 d3 O# _

" {% n& `2 {3 A/ |( _5 t2 {public class ActionGroupDemo extends SwarmImpl {
3 M! B4 t+ a  X% h" ^! v; ]0 M7 ]+ v        ScheduleImpl schedule;
8 q. I0 q3 p1 {- k2 W" {        ActionGroupImpl actionGroup;+ s" _- n9 Q2 z+ j. ~" u1 x0 ?5 J' a/ G
        ListImpl list;
. u( L8 t, e( ~6 J! C0 I& E; O        char Id = 'a';
% w! u  b  Y4 `9 f& @8 h  c4 q; h8 D% w. o! G  u
        ActionGroupDemo(Zone aZone) {/ t% N% O; S; n5 S$ ?* z. @
                super(aZone);4 z$ L3 h: s! D/ v/ A- o% o
                list = new ListImpl(aZone);  j7 f) E4 r- j6 i
                swarmSetp();6 q' F! Z/ b2 R
                actionGroup = new ActionGroupImpl(aZone);5 h  l+ L0 k' z4 ]
                schedule = new ScheduleImpl(aZone);
2 a4 Y5 _  F2 a' ]0 \; r+ Y% C& W1 g7 d                try {) h8 C+ r! \! I5 P. D
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 I) D. Y) S0 M! r4 l9 q/ s0 m9 h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  @% i! O4 v9 ^. |                        1 q* E, _9 R% [& b: Y% S# R4 b" z8 R1 p
                        actionGroup.createActionForEach$message(list, agentSel);" `" o" K6 C6 ?: w" A1 w" b# O) U# r
                        actionGroup.createActionTo$message(this, swarmSel);  o5 ~: z$ ]% _/ [+ f
                        schedule.at$createAction(0, actionGroup);4 r7 C8 [, \7 t/ B
                        schedule.at$createAction(1, actionGroup);7 [, U" j5 o" B( n, A1 o
                        schedule.at$createAction(2, actionGroup);
" g7 g8 F8 ~6 o* T" @4 A
& O5 ~& k9 q1 |0 I% P; ~                } catch (Exception e) {
8 }2 M7 t" K5 ]  ~( x0 c$ y5 B                        e.printStackTrace(System.err);' f; A6 B3 r' v. B, i$ M2 b
                        //System.out.println(e);
: q! H1 q" S0 J0 T& `                        System.exit(1);/ `% y& ^0 ]5 S! M8 f
                }9 [4 c" Z% C9 I! r/ T
. N5 g" v4 {. \4 O: l' [+ O8 M
; o4 D$ ^) r, C$ l$ p5 _
        }
4 `$ L1 t, S' K3 U9 V4 O
# O$ v) d9 O& ]1 ]        private void swarmSetp() {
8 G5 Z1 I6 X$ v) I5 |) ^                list.addLast(new Agent(Id));7 i, `) q- H% t, ^  B6 D- B5 ^
                Id++;+ `% f: S# n; _. Q1 k3 D5 o5 O: U
        }
8 k' ~" a, h; m7 X' c6 [0 y& K8 V: J- [+ B( u
        public Activity activateIn(Swarm context) {
, g2 x  i0 W+ l3 E                super.activateIn(context);
3 X" f6 Y, N' ]; L& t, a) y                schedule.activateIn(this);, g/ [5 f; U& k6 T4 `6 X+ r! ~8 h6 P) v
                return getActivity();
1 ]' A+ J- }& v7 S( H  [        }
6 m0 F$ d: y6 K) l7 g. Y. z. |# J6 I" W) v3 t; b$ b8 r
        public static void main(String[] args) {
2 d- S& n9 \, `7 T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 P- E4 D5 n; P9 _) G5 C3 h% w1 l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ I  P: ~$ d# @) G3 Z                swarms.buildObjects();
/ O0 `. Z  I1 e  I1 f                swarms.buildActions();$ O+ W* l1 E: X1 U) ?- X
                swarms.activateIn(null).run();
( r( M* ~5 E! ]1 f4 I  X9 I; c- Q) \        }( F" \# x$ e( J9 g

9 k  A' X  K  ^7 }" C4 o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-13 11:00 , Processed in 0.018291 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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