设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11720|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   E% t4 g8 X. U: [& T: c
; p* Q0 B& V8 ?0 W, `8 ?' J$ y; O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 D, ^/ y, }5 a- u9 t  E  y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; h0 @# J8 Y$ O. O1 Q9 Gswarm.SignatureNotFoundException
! I" v: f3 i( f- p        at swarm.Selector.<init>(Selector.java:76)
, b; v* V4 ~5 n: d( ]5 f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 R- `5 e3 T2 s8 i2 z" P9 u( V$ G% E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 F' ]' Y9 y) Y5 s
. N' j/ Z3 P8 e3 ^- |  J) K' o; ~5 d
import swarm.objectbase.SwarmImpl;3 D1 t* D( [' M" H9 B
import swarm.objectbase.Swarm;% P! M7 E$ l8 X
import swarm.activity.ScheduleImpl;5 j+ m6 Q  c8 F. N! `$ J
import swarm.activity.Activity;
& f/ f) j2 |) C, N- @import swarm.activity.ActionGroupImpl;
2 x9 H& d7 }# C" L8 s7 o# ~import swarm.collections.ListImpl;# F9 v: `/ J' k5 e& G
import swarm.defobj.Zone;
9 P4 l1 Y# h. M% h; ^& mimport swarm.Globals;6 I& Q/ U. j$ ?: t& y% e8 f
import swarm.Selector;; k- b( X" g/ i; a# ]
import swarm.activity.ActionGroup; " P5 D0 t; n+ I6 T2 n$ F. u" w1 \
class Agent {
$ A1 g2 n6 i1 \4 _" g5 p9 U        char id;$ X4 D4 R  o! W) b- F! C4 w
! h+ P2 F- m% `# _, m$ N
        Agent(char id) {
0 b* [3 U$ A( c6 ?* D  ]4 Z                this.id = id;
6 `% h; Z% V6 f4 J" T* I2 L( F8 U" ?        }+ h, Q  l$ R9 c5 p

2 i; N* I% w0 b) _/ P        public void agentStep() {0 k$ G5 H, G" r8 _$ M
                System.out.println(id + ":" + Globals.env.getCurrentTime());9 t& j4 g( y* T+ Z% K; j
        }' t  y) h, k) S+ a4 }
}# D6 C7 W& [" d

4 R1 j, M% I' Z. r, ?1 Vpublic class ActionGroupDemo extends SwarmImpl {7 g1 Z5 e6 V& H2 ^- A# g
        ScheduleImpl schedule;- Y. B: P: j5 J9 ~1 y7 Y0 H
        ActionGroupImpl actionGroup;1 \" p: f: I, @
        ListImpl list;/ i9 m# |' Q6 H1 Z4 v; E( w+ r, _
        char Id = 'a';: g, U8 ^# i" b

5 e8 ~# J* z8 W' N        ActionGroupDemo(Zone aZone) {
) A* t- q4 r" ^  N' J. |1 n                super(aZone);
3 f5 y3 k6 i4 j* Y' h3 ?8 [                list = new ListImpl(aZone);
: _/ \% [8 {9 X" E6 p0 |# E0 i. U                swarmSetp();+ B8 T5 [3 D. j2 q: s
                actionGroup = new ActionGroupImpl(aZone);
# P# ]2 z3 C2 l3 `. ~. G' S/ y/ G                schedule = new ScheduleImpl(aZone);
4 M$ S' S; Z  G$ l; d- T                try {
) z/ w0 {) K3 H  s1 l5 o                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( U3 h* E8 F- w2 X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# ]6 Q. ^, a% w$ i* W6 b                        . V6 l& n% h1 @
                        actionGroup.createActionForEach$message(list, agentSel);8 W+ d6 X7 P, N  r1 _6 c
                        actionGroup.createActionTo$message(this, swarmSel);2 x* Q, r: l1 E/ \, |/ A
                        schedule.at$createAction(0, actionGroup);
: U+ @% q% ~0 ^+ h# x; n5 C; F' D                        schedule.at$createAction(1, actionGroup);
, O9 O6 U2 H7 I9 r3 I                        schedule.at$createAction(2, actionGroup);- `! N9 [$ M6 W; A' M! @% u6 t3 w' u

4 I- m/ u8 Y" ~5 S                } catch (Exception e) {- ?$ N, R: c9 u+ u7 d# ?
                        e.printStackTrace(System.err);2 ?8 p  t+ Z7 R, L/ |
                        //System.out.println(e);
1 X0 U2 A8 U, R                        System.exit(1);7 ^. j( \. y! {# G2 l8 M  r
                }
+ b, S  U) x7 O9 i8 |5 K& m0 U3 _3 ^4 \! b' W9 h, z% @

- r& m! E# t, x& G- n9 A        }
* T9 N- A5 N8 H
* N+ ~0 ?3 q. u        private void swarmSetp() {4 ~0 U4 x" Q2 c* ]8 v
                list.addLast(new Agent(Id));( [0 V# A/ p6 H" q+ z: t  J" T
                Id++;
$ f2 @9 V0 L( q& ^  q8 p        }
7 Q% H4 F( F- Y# x) t1 J; m# L# u: }" \2 s+ O! @& B5 h/ N( f  B
        public Activity activateIn(Swarm context) {
- v: E. R0 X" ?3 p                super.activateIn(context);9 J1 B* [& d7 {$ E( z" Q/ X
                schedule.activateIn(this);
; v" R7 N+ D- f9 J6 q, w$ o                return getActivity();
3 |+ N% s* S( N* `        }
# g& s5 o* K8 N) F$ j' j% C- a
0 h3 h0 y  F0 D+ r; q        public static void main(String[] args) {
2 h! w! W* d) y: l4 K5 `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 y3 d- H: a; v* z9 n/ `# h# n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 b( f! Z( J3 J8 N3 o# U& }  T
                swarms.buildObjects();& Q5 w! b. r* i# s, h
                swarms.buildActions();. A/ V) _0 u6 w" ]2 y/ F
                swarms.activateIn(null).run();# {# \( `; |" n- j( f5 F# p7 r: h
        }' n9 z- [' Y& t5 H4 u2 u
; E, R9 v: b, B7 e( c3 g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-20 02:32 , Processed in 0.013892 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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