设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8481|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; [4 u0 r% @( X5 z3 E) s; U
, s4 ]8 O2 C$ G- ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21: M3 `  g& Y7 O/ v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) a0 K0 H4 D2 T6 Y
swarm.SignatureNotFoundException" @; H' r3 c. _: o" \0 Z
        at swarm.Selector.<init>(Selector.java:76)9 k: R) h) y2 a- ]
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); z$ a& k. Z( U0 M3 n
        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ K" I: k1 c) b6 T
$ }1 k' x4 g- \7 c9 e
% I% F0 [8 E% `) u( ]8 e" t
import swarm.objectbase.SwarmImpl;1 Z( Q$ _$ d* R1 M
import swarm.objectbase.Swarm;
) s+ O& h2 L+ T2 _1 Z# M3 n2 Z4 g' oimport swarm.activity.ScheduleImpl;
; |& w1 U, c. x! E& d+ t: bimport swarm.activity.Activity;
: \0 L; i$ [5 L# [import swarm.activity.ActionGroupImpl;! Y& S) W; b3 l. A% r3 N; L
import swarm.collections.ListImpl;
# h. p& n6 u" B, D- Simport swarm.defobj.Zone;
: |* Y2 y9 g! Y' w* Jimport swarm.Globals;& m6 s8 D5 r: ]6 i" Q0 ^1 V
import swarm.Selector;/ V% P1 T) N' v* a9 a: r
import swarm.activity.ActionGroup;
0 F7 v) b, H4 ~3 M2 E9 qclass Agent {+ C; S2 ?" S  F* z+ W7 S: V6 Z
        char id;
; F% ?4 H& l2 {
9 ]+ V, F4 E" J$ r        Agent(char id) {
" |0 \- [% t0 \5 ~( w                this.id = id;) B+ o1 @/ J6 a4 }$ {$ i3 p
        }+ m1 T3 J/ L* y8 g( M3 w
7 D2 O/ O/ p3 F" W& }( r& A
        public void agentStep() {" U+ E" u1 J5 ]0 L3 g
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 A+ q$ f4 x4 d; a7 r- ?/ N        }  o$ T4 g1 e1 P" f7 t1 @
}0 M1 E# x; J+ g0 b, Y! ]( L' a3 l
/ b5 e' `# x* j3 y! N% y  [
public class ActionGroupDemo extends SwarmImpl {
$ V+ O5 ~. h: z6 _3 {+ [, K; o        ScheduleImpl schedule;
( i' D2 ~0 k/ s6 V        ActionGroupImpl actionGroup;+ V. g1 c7 X- Y
        ListImpl list;
  R# E/ ^' h7 Y* ?        char Id = 'a';
$ B" c  Z, i% J( s8 W- ?
0 d& O) V7 Y) o: \& _  D* z+ V' ^        ActionGroupDemo(Zone aZone) {* n9 Z/ L+ z$ b3 i
                super(aZone);& I" i9 ^8 K; b( U( M- F
                list = new ListImpl(aZone);
1 C8 v# B& c; @# x1 U                swarmSetp();8 P) y6 f+ V. ?. N! S- u9 N
                actionGroup = new ActionGroupImpl(aZone);
8 l' _: u1 D7 V  P# \                schedule = new ScheduleImpl(aZone);
+ b  t9 k2 Z% Q! w                try {# j; O5 ~$ D. u
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ P9 h6 f2 G% a' [. R                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) U, O/ ^$ h7 u6 W1 f                        
: f/ x/ y6 M. m4 x4 j1 w1 Q1 ]                        actionGroup.createActionForEach$message(list, agentSel);. U; [) p  t/ Y! T. h9 y- d
                        actionGroup.createActionTo$message(this, swarmSel);
1 m1 `( O8 q$ ]$ W                        schedule.at$createAction(0, actionGroup);
! [& X8 n5 Q1 _& W                        schedule.at$createAction(1, actionGroup);1 g5 v9 X4 X* B7 {3 A
                        schedule.at$createAction(2, actionGroup);
/ `+ }# ^$ G. i
* t) I. b) v4 y2 k                } catch (Exception e) {
% V; O- X: c1 P% X" I. O! L) Y8 d                        e.printStackTrace(System.err);" b3 r, o- h" L& u# G+ @- O1 D$ ]
                        //System.out.println(e);
/ F5 P8 g" ^3 e3 ?                        System.exit(1);
  U* a! }8 {0 G8 E8 O2 F                }! s' S. G* z7 `' W" G
3 [8 t7 G- G7 O
9 x  }/ z' V4 G
        }
/ u9 w# ]4 i! J4 @4 q: A3 s; M
$ q7 j4 f7 r! f* L        private void swarmSetp() {8 H' H. q$ x: K7 i
                list.addLast(new Agent(Id));
/ J2 {/ M8 g. |1 o. l, n                Id++;3 A& X, I) H9 z: q' J1 Z9 F
        }+ w& T" n5 F) b# S8 i8 \$ }7 Z
3 i- C- x/ ~1 c$ N
        public Activity activateIn(Swarm context) {) \7 ^5 y3 o9 p' {9 s4 a5 ~; R
                super.activateIn(context);
6 D+ `. X' @& }! }                schedule.activateIn(this);# y, l( ?% c/ M5 H4 D1 y
                return getActivity();2 s/ y! I) _( M* a9 c* {
        }; c& G# `+ s' w* p( Q- [$ m8 U8 t
- G& q8 N) L) a9 E' Z9 e
        public static void main(String[] args) {
) G, G$ z' L; N/ O. X6 q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( z: H  L$ m3 e5 L# Q& P5 ?' p& R
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( w0 y* H, w' e! A" y' X: ^                swarms.buildObjects();
2 v4 Q6 M7 m. l9 a                swarms.buildActions();# I/ x# \9 c, q4 x& Y" S
                swarms.activateIn(null).run();8 {4 c* i# Y+ N6 O+ P( ^
        }
( M+ f8 h& t* C, d1 ~& O5 a6 y! k5 S/ i1 |& ^2 d1 x% v% ^- i- ]
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-13 17:29 , Processed in 0.020105 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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