设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9530|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . M0 k* h( o  J% }6 Q: E/ b% ^
9 y2 Z$ S; m2 P3 d5 T: j; A. y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! |9 _& A! E/ u0 W: R7 M
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) H& P. e& N: Y; x2 H  E
swarm.SignatureNotFoundException) C5 F( R7 V8 z# O5 ~' w% f
        at swarm.Selector.<init>(Selector.java:76)
* u- }% V- T* O* D/ y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  H# f3 k4 H5 e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ [( t1 i; I( j' y1 ]1 l8 \) S
! R' K% {; i% \8 c
) P7 s0 i: L4 W+ P( X/ C" p* ]) Fimport swarm.objectbase.SwarmImpl;, C  u. q9 w( u9 b
import swarm.objectbase.Swarm;
4 k4 F/ U: C9 {6 f; Jimport swarm.activity.ScheduleImpl;& }' Z# w0 Z6 L! ~: v
import swarm.activity.Activity;6 W! r6 q" r: r3 A3 j* s
import swarm.activity.ActionGroupImpl;- ~( Z7 x: \" }0 y# E9 q
import swarm.collections.ListImpl;3 i9 |4 [6 }' R- M
import swarm.defobj.Zone;
2 g% {& w+ A2 d2 iimport swarm.Globals;0 @+ S% l* q7 o8 e* q; Q
import swarm.Selector;
- j) |' F4 e' p6 |0 ^. Oimport swarm.activity.ActionGroup; 9 p; R3 K. q) g5 m+ }- I
class Agent {
* w, R9 Z- E! W6 Y1 z0 \" w9 f/ C        char id;
* O: `( o/ |5 j! L' t
" Y" ?1 V* ~2 L/ o/ A: [! x        Agent(char id) {
) s1 i) }. R: i- H" z                this.id = id;
- Z0 n- Y, P" j6 {        }
1 a3 P8 K  u2 p& \( j* X+ Q5 w( F3 J6 i' M( K
        public void agentStep() {
8 ~, z4 ^# {1 i) D% A                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 p" H- H  X8 p        }
9 X" S# |* [9 E# U5 W- w5 V}: A/ N  S% d2 o0 C' ~
' `2 O) ?5 P/ D5 s
public class ActionGroupDemo extends SwarmImpl {, e3 \7 w" B2 J  \$ k( ~! o% w$ K
        ScheduleImpl schedule;
2 V& Q# i2 X% Q: `        ActionGroupImpl actionGroup;
& n/ T2 {/ ]' `" v, n        ListImpl list;( Y# G, o% C$ f
        char Id = 'a';
! j9 Z  u- V4 B5 i. l: Q
5 }7 m7 H! ]5 n) {6 G4 B        ActionGroupDemo(Zone aZone) {
( W! T4 Z; h# K6 h7 |1 M5 W0 |                super(aZone);9 _# L9 r; s) B% a& g, W4 Q
                list = new ListImpl(aZone);7 P6 ?( I& h1 m8 f! q8 f
                swarmSetp();
% ]; m2 a0 A, \1 d* F) B2 t                actionGroup = new ActionGroupImpl(aZone);
% L% M7 ]' D) E/ e) _                schedule = new ScheduleImpl(aZone);- R* K) S# n' C% p0 [# M* E
                try {
' t2 ~1 @6 D  ?: T8 u                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ T: T8 i: ]8 D9 \- f. ^% D                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; w+ E( E# _: H, }" t
                        
4 k, C- f% d' p2 I                        actionGroup.createActionForEach$message(list, agentSel);* c6 u! J7 [0 k  J/ }2 J; c: W
                        actionGroup.createActionTo$message(this, swarmSel);
  [6 {/ v/ L$ F) Y9 \' X                        schedule.at$createAction(0, actionGroup);9 J5 [, |9 Y' G* a
                        schedule.at$createAction(1, actionGroup);9 ], A( v* D9 ^8 C4 g  u: R4 Y
                        schedule.at$createAction(2, actionGroup);2 H8 `2 m: h8 m" P; z/ U, `) J. W

4 E2 Q) t2 N) Y$ l6 J                } catch (Exception e) {
5 L4 e' w" I" d! B  N3 S                        e.printStackTrace(System.err);
# @0 W, [, p9 j6 Y                        //System.out.println(e);7 r8 S6 \+ X$ v6 K! W3 C
                        System.exit(1);& s+ v( ]  z  I! T' V+ Y: Y, w
                }: y* t8 ^; X3 \$ j1 o0 H: ~# m& @
' e4 i+ V; Z1 L! ~

6 w* S4 \- I( z- g( s1 Y        }
5 ^. y6 I! ?+ @$ ^# L# A0 [2 v  M0 s4 n+ R& Y* c6 ]
        private void swarmSetp() {) k' J6 O! S% @* r$ `5 D& ]0 r* v! A
                list.addLast(new Agent(Id));
3 C" n9 d* S3 |$ A% x8 ]$ U2 w                Id++;( z1 c/ d+ z$ h1 ?7 f: g
        }/ C4 ^# k, ^6 m% e0 ?/ }
: W% T) N6 o. F+ L7 K' o0 C
        public Activity activateIn(Swarm context) {: V' I( L' D; V4 W  m2 V
                super.activateIn(context);
% B8 O/ E! x% P) v6 c' e5 O                schedule.activateIn(this);
' `! ?  f& u; ]# d$ b) B4 t2 x                return getActivity();
3 G' B% q. |! z0 h5 q1 }* W        }
: D2 p$ ^% a$ k1 S6 g* q% d; S$ `
4 C2 q3 H8 d8 X, b: D8 j- U        public static void main(String[] args) {6 m5 J" `- N" H- B  g. c9 u& S
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% s- U) z& z! Z2 M) I                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; d* r) L2 h2 D- |  E
                swarms.buildObjects();: l& s& C4 X$ h/ G( {
                swarms.buildActions();% B: U. L: R9 X
                swarms.activateIn(null).run();
& Y3 k! Z; b5 W! @" w        }4 b. A# R8 F- l; _0 k# L+ P: A, ?
+ k' B2 w# F$ p! o6 [: r
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-14 16:08 , Processed in 0.024420 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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