设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10861|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! A0 [3 T8 T! b+ p! Z9 h' R- Q% F& O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% I5 @7 S4 T" d% n# J* Q0 z& {2 H2 W
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 C9 @7 b; r' u( y, {0 Z
swarm.SignatureNotFoundException
: |: W) @; P% S% `        at swarm.Selector.<init>(Selector.java:76)( ]* K1 |6 ~) J- Z# A  W! q' n* a
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( ?3 G9 J2 E" ~7 e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 `5 D$ }5 U; t" l6 a! S: k8 b* T/ W1 w

% u" Q1 v2 k9 N& W) N0 Fimport swarm.objectbase.SwarmImpl;
( h7 d: n2 T( T1 rimport swarm.objectbase.Swarm;3 W3 ^& G+ E1 N. I$ {
import swarm.activity.ScheduleImpl;
! H) N/ a  i2 o1 v% U. ~, b) Y  Iimport swarm.activity.Activity;- F8 H/ b8 T) E7 P& `
import swarm.activity.ActionGroupImpl;9 S, T; c7 u8 H: p  L3 X& \
import swarm.collections.ListImpl;
6 @; d: C+ t2 v. V/ `4 @) m: O' p. Pimport swarm.defobj.Zone;
. R& Y$ ?# ]6 k% J+ Timport swarm.Globals;
$ S3 X! `- x8 l( Bimport swarm.Selector;% I/ H1 `3 |) W+ a  y# t5 C
import swarm.activity.ActionGroup; 1 V8 Q+ T1 O& C
class Agent {! i5 M  ~' p, z  @, A# Q
        char id;3 q9 ^. N: q8 Z

$ F9 f% C. F2 q6 n% [& p        Agent(char id) {
" O: \3 o* s5 r0 ^1 c6 ~& n+ e                this.id = id;) Z/ m( |0 O4 ^, G
        }
, J1 a( M' ?& f  ~0 u3 u+ ~0 f( s  G1 r
        public void agentStep() {4 h) u0 ]' N; f: S
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 v) i9 h- A' p        }
3 q3 U4 h0 V' l, f7 X  o}4 u$ q+ C5 J% C/ I- g1 p+ G

# T7 |7 E" [: t( ?: tpublic class ActionGroupDemo extends SwarmImpl {# o' B' ~/ K: {
        ScheduleImpl schedule;
! A" R9 h! T" g5 X) a9 I        ActionGroupImpl actionGroup;! a7 ~6 Z1 b* t3 n0 X2 Y/ r/ @
        ListImpl list;
/ n+ [$ f* V0 T* D2 }3 ^' Y        char Id = 'a';, ^% J; n$ O% I) v' c

4 |3 j8 E( R! j  p' H, T# ]        ActionGroupDemo(Zone aZone) {
! ~( V+ c' q# K, G9 _# N* j                super(aZone);" f  X3 b/ }/ p+ s
                list = new ListImpl(aZone);& g$ G8 @/ w4 }
                swarmSetp();
8 ~, ^1 f& D0 A% V" L                actionGroup = new ActionGroupImpl(aZone);
% y7 X- s- K' i% r  J5 g                schedule = new ScheduleImpl(aZone);# H+ q8 v2 ^  [7 C0 v
                try {
9 e9 M9 T) L0 J. X; E1 I7 g                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  u+ r+ H3 M! X8 o% m                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 ]/ z! d) ]+ C! F- A                        
" Q  J  }4 G4 p, W6 J% Y' o                        actionGroup.createActionForEach$message(list, agentSel);
  O* t9 V1 h6 c( i                        actionGroup.createActionTo$message(this, swarmSel);! T7 I  n1 P8 z
                        schedule.at$createAction(0, actionGroup);
3 k/ N3 {4 K; j" K5 s7 f8 z) _  x$ p                        schedule.at$createAction(1, actionGroup);
+ t7 {" }% {$ R  P/ T- {                        schedule.at$createAction(2, actionGroup);5 `3 \* S  i- C( {: c

1 B8 N; A9 x3 Q4 S                } catch (Exception e) {
3 P  F/ t2 S0 |) N( |                        e.printStackTrace(System.err);% y* i) C( q/ D
                        //System.out.println(e);& _' R0 Z4 A/ m% m) w
                        System.exit(1);. B* B  h8 b: W4 w/ c: i8 q' y- }
                }
3 {: X/ o2 C/ U/ z. {3 b% ^& S8 R) V: G$ H3 j1 N2 z- i7 ~
. i/ E. @5 q) L/ P+ ]  V
        }
, y0 u! g8 ~# }/ Q% g! X4 a
8 L+ _7 ~* O% M4 P. b        private void swarmSetp() {
+ i) p2 z# I& l, Q* D+ C; f" K                list.addLast(new Agent(Id));
4 V2 ~- x4 r' ], S                Id++;8 _1 J7 Z6 N, T/ S4 V' k/ ]3 t
        }* M7 j# h, H  L" T" R
3 X1 x! g8 g: P: S  U
        public Activity activateIn(Swarm context) {
4 i$ O) n9 p# Y. w" W                super.activateIn(context);
) k; A* E$ y" ^                schedule.activateIn(this);5 ^8 e1 Q$ @9 I- T0 e4 I6 n( [
                return getActivity();
5 b7 B$ Q& t0 H7 Z        }7 P4 Y5 ]# g$ o# z; V
+ c) J* v5 T; Y% h, ]% n. s' w
        public static void main(String[] args) {2 N! r- a% h4 T) a
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 T3 I5 Q5 Q) Q4 [" S9 g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ a/ G& e5 b, `7 V/ ]& E                swarms.buildObjects();
) u, e" w' ?1 m' D7 I' R                swarms.buildActions();1 e6 m& q! J' L4 M; J
                swarms.activateIn(null).run();0 E3 `% [8 q: M
        }# Y6 \! w. n( {7 W9 d6 V# R

6 @* V4 J# f- ^, v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-25 23:19 , Processed in 0.013626 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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