设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13617|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 y# _2 B3 v! @' M+ g9 h' |& ?
7 U. k5 p9 _: h, K, {4 y  r* N1 J8 P本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* d6 t+ z7 f) R4 r2 U& H7 u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  L; p7 y- z: B, I5 h6 d+ O
swarm.SignatureNotFoundException  r, F) f; c  y, L5 h; B
        at swarm.Selector.<init>(Selector.java:76)
8 e+ ^) ~: B' I  W- y) e+ r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 {; |1 G) @3 `# {( J+ n& B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: {3 y  g7 ?4 e9 c4 V! X7 M% X: e9 i6 M, r( u
8 x1 B/ |/ Y3 d, Y, s5 \3 e+ W
import swarm.objectbase.SwarmImpl;
. |/ B( }; [- C2 f+ P: }import swarm.objectbase.Swarm;6 B' j" _: G" `1 d7 b& e
import swarm.activity.ScheduleImpl;
1 s. W# h  }  bimport swarm.activity.Activity;
" v' G8 a/ d, Himport swarm.activity.ActionGroupImpl;
1 }, {# d# k# w+ J1 X% F+ kimport swarm.collections.ListImpl;+ i/ t; J. w+ I4 r
import swarm.defobj.Zone;
- ?- a* e( x# x8 {' Timport swarm.Globals;
& P$ Q7 f1 Q6 d2 L& a; ^import swarm.Selector;, C9 l+ A% H7 j) a2 s2 {
import swarm.activity.ActionGroup; ' q+ y/ |( f8 ^' c
class Agent {! S3 E) B: d/ l. I, N
        char id;
7 O. J! Y  ]: K) ?& g, ^' B3 z6 y0 }0 W
        Agent(char id) {
: V; p$ S# w. a                this.id = id;
+ O# c) t6 m) c" u; o% H        }1 Y2 I" ]% u: S% R% ^; M; S
8 v2 B" _" \& q* F6 P
        public void agentStep() {7 o6 M( `) E9 d/ ^
                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ J: I  d. t1 W5 X1 y        }" M# r6 ]- A/ N4 c, i
}7 o9 t& C5 X4 a! Q* B; G

/ X, M# e( e- Spublic class ActionGroupDemo extends SwarmImpl {7 i0 ]6 B, p( I5 A; `
        ScheduleImpl schedule;! H9 @% ~5 t$ K- d* b4 i; \
        ActionGroupImpl actionGroup;9 ^4 o% F( ~. d
        ListImpl list;
' d  `- Q5 c& p3 i        char Id = 'a';
0 t& ~. k* e& o3 [1 y0 u. G+ m% E3 C! ]: r  s
        ActionGroupDemo(Zone aZone) {
, [  `! W: @6 Y' E+ G                super(aZone);
) d, |( M) T! X  {% |" I                list = new ListImpl(aZone);
) v' m/ r1 b6 O, V9 w; w                swarmSetp();
. E& L# P! ]+ r% k9 Z: Y# r                actionGroup = new ActionGroupImpl(aZone);0 X, o3 g: ]( _9 A% _7 D
                schedule = new ScheduleImpl(aZone);
" k. d, ]& H7 [0 T                try {
! {) v2 v0 }2 v# y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 c+ {. H( I" D+ B+ K                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! ~: W: m" ?: r8 h/ c( O6 I3 g                        6 M& P9 @0 \1 A8 \  _6 l! L
                        actionGroup.createActionForEach$message(list, agentSel);
) @* f( w6 k" I4 m3 _                        actionGroup.createActionTo$message(this, swarmSel);
! X" C: C1 p# z# X- j) e                        schedule.at$createAction(0, actionGroup);! M/ {8 K6 q; I  ]) c+ D2 `
                        schedule.at$createAction(1, actionGroup);" B0 C9 b: H1 q. j# h" C
                        schedule.at$createAction(2, actionGroup);8 @8 c  p  s* H

/ B  j, _: j7 O4 y                } catch (Exception e) {, d4 r8 D/ p& [. e; o/ ~4 |  @
                        e.printStackTrace(System.err);
  Y, F- L+ }$ F  T( h                        //System.out.println(e);) ~- R8 o$ K( D8 t
                        System.exit(1);' a- D5 ^3 C1 m
                }! s  {, a( L7 J

2 p- C- w! _; h% p. L' `( x5 x% l4 _) O
        }
0 ?3 _2 }7 Z" |8 o4 [( A/ Z, K& S( [; j, F# D
        private void swarmSetp() {
. ^; y& N4 F  G3 ^- _: x                list.addLast(new Agent(Id));
7 _+ ~' p, b# Y0 a                Id++;
- _0 ?/ @1 q5 a4 f# s6 p3 w; d        }
# C+ O0 F) x( C2 W; @( e; o$ \
2 z# Y- n. {5 ]! @; W        public Activity activateIn(Swarm context) {3 m5 N$ i' }) _6 g1 o
                super.activateIn(context);1 K! v1 Y' p! \# u, w" @# T
                schedule.activateIn(this);
6 [0 V3 F6 g' s  o                return getActivity();& b; t1 _7 t9 q1 I
        }! R0 k8 j- x- v$ M" g  @# V0 |7 b& N
" P6 s9 z  F  ~) v, X& g
        public static void main(String[] args) {
8 ?8 r- I, K- D' c                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" q  @* C, q) U* O% j- @+ c: v  [  N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 g- W( v0 v4 {! M2 r' W6 I/ f
                swarms.buildObjects();: d6 P- a8 g  d; R' ^
                swarms.buildActions();3 n( n! m+ S# J% x: p( ?
                swarms.activateIn(null).run();
& ?( e5 g! a0 f# u. k! Q; x% P        }& v5 p7 I  Z4 [0 J: a

/ [' ]- S5 e( k' k}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-12 18:36 , Processed in 0.014805 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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