设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6982|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" q; Y: I; _9 ?+ S* k
# Z4 B1 o) ?. f$ D( b# [! p; y" e* q, P& h本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: y0 u6 o: M* e' M以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% E) r5 ?( C5 S$ Z
swarm.SignatureNotFoundException# E7 @! {. M/ Y/ W6 [
        at swarm.Selector.<init>(Selector.java:76)5 O1 {+ a* D0 E2 @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ k* D" v  r# h) Z  {
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( q3 S1 v/ x3 g8 _3 L
8 H6 G' j# W8 u* D, I  W
8 D# S  q8 _1 w" a; w- ]& u
import swarm.objectbase.SwarmImpl;9 m) V  ~3 r+ L! Z- o  c' y
import swarm.objectbase.Swarm;
2 d3 `) L" w2 uimport swarm.activity.ScheduleImpl;9 h0 P, x/ p' _8 S  q4 q7 k
import swarm.activity.Activity;$ W% c# q2 O6 L7 W7 R8 {/ i/ u
import swarm.activity.ActionGroupImpl;
+ S; X  G- `6 E* Wimport swarm.collections.ListImpl;8 L  B9 N% {- N& }* O2 D
import swarm.defobj.Zone; $ s( d& s* R# [: g' u# o/ r
import swarm.Globals;  c! V( x& R3 [
import swarm.Selector;4 B/ M# ]+ [, }
import swarm.activity.ActionGroup;
5 O6 g$ v/ Q& ]class Agent {
; ~+ ?6 @8 Y" ^        char id;/ n* e3 V7 q) X: e1 {; y

( o+ f: Z& N) w        Agent(char id) {: A% m" i, `3 h# h7 L0 [, s
                this.id = id;
5 c* J: N  j) N, i& q        }
' c- l% K! c! B7 Z3 g8 v+ ]/ d4 X; `4 L
        public void agentStep() {' }0 Q; J, d. _/ l& }! W5 a" U; ]
                System.out.println(id + ":" + Globals.env.getCurrentTime());
: `$ K0 M& |/ i( |        }
: v' n) x: j. Z$ j' n- i}
# V; ^* v4 A4 X* _  e" y/ W: P, Z# a; b) [
public class ActionGroupDemo extends SwarmImpl {4 v: G* q, q3 z9 i& g
        ScheduleImpl schedule;) k  x0 T- z$ G4 N0 v% u1 H# E3 g9 _+ \
        ActionGroupImpl actionGroup;
  \5 X: ?5 m. y! ~, Z! c# e        ListImpl list;
; J/ i7 G! p2 a        char Id = 'a';
) D$ ?( Q. Z& |4 Z/ o' @1 P! G) U
3 H% ?4 @% H: |% t# v+ e$ u        ActionGroupDemo(Zone aZone) {( v2 v% A% H8 M& P% p# c
                super(aZone);
! A. x. p0 P/ `8 z+ l( j! z/ w4 `5 i                list = new ListImpl(aZone);
, l7 C/ ^) q: C( ~& _                swarmSetp();
# n% @1 Q; z, P) Y% o7 d                actionGroup = new ActionGroupImpl(aZone);3 S' f# A& _! V$ U/ ]# N" _. i* u
                schedule = new ScheduleImpl(aZone);9 X: ~/ [7 g+ d. r( a' P; l5 n( \
                try {
8 k9 C: M% G/ `- ~2 A# l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  N: e+ `& ^4 j3 l) S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 X6 a3 V# w; y
                        * d8 I) o* o9 T3 H* q# j4 e. }
                        actionGroup.createActionForEach$message(list, agentSel);1 Y$ ]$ K8 O; ]
                        actionGroup.createActionTo$message(this, swarmSel);* s' n0 L2 |+ T- ^; r
                        schedule.at$createAction(0, actionGroup);) J9 K! W" O4 \5 \% ~! A& {$ [
                        schedule.at$createAction(1, actionGroup);
. W& i8 g# A2 u                        schedule.at$createAction(2, actionGroup);6 M$ p" U# K" b

: y1 X: l' a) }* I* G) ?- R                } catch (Exception e) {8 I3 q9 y2 i$ I5 Q
                        e.printStackTrace(System.err);
! m; ^  `3 Z4 \" Z8 O                        //System.out.println(e);
' ?. d( s6 M, N  g                        System.exit(1);4 W% Y. `" o% a% K9 F  Q: u
                }) t$ W# o; g" C' e9 Y7 g& F: F

9 o/ M6 ]( e. t1 C% a1 r6 [: Y; z) u2 s4 h
        }
+ O! H6 C3 g$ x% z. @  P+ K( R- g( _: y# |6 k6 p3 e7 e; o
        private void swarmSetp() {
/ w% k$ q8 N. x# i* I4 c                list.addLast(new Agent(Id));, u. b+ S$ l% e) p" u
                Id++;! [' n( z6 ?  V# D2 C
        }
2 p# p) [$ v! N( X: _6 g2 F$ m% p4 E" }
        public Activity activateIn(Swarm context) {
, t+ }5 i( x0 y: n/ H                super.activateIn(context);, Z- ?( z) g# c
                schedule.activateIn(this);, Q9 c4 l8 [& A( K& ]5 |
                return getActivity();3 w# M: q. D5 i2 n
        }
- r0 t$ @7 w* A0 f; ~" G  p' F3 r( _
        public static void main(String[] args) {9 \& \9 p5 z  _0 h1 ]% E. Y
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) ]+ d5 N) t* Z. b: s                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, ]- f: u/ P0 i1 }  o                swarms.buildObjects();
2 S1 e" g) L' w* n# I2 y; X7 b: v5 F                swarms.buildActions();- J- A& v& T5 g7 q0 ^
                swarms.activateIn(null).run();6 i1 g! Y8 a' A2 d" Q
        }
( `3 ]2 e( f! O7 h& D7 H- `8 G! F; T# D" U; `0 ~; l* C: o
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-15 16:17 , Processed in 0.019953 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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