设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11379|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* Z2 {* {  o  |4 R4 @7 Z$ }, x4 L2 }) U- {
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 q2 l' ]. l+ L' d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! O5 U0 |3 f1 d
swarm.SignatureNotFoundException# w' Z3 x7 Z+ B6 b5 p
        at swarm.Selector.<init>(Selector.java:76): K$ \- `1 ^- F, A
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 K  B( [0 H$ }/ C  J$ r        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" g" s1 W* S6 V. t8 D- C$ A& v. ?4 n) _8 U* J" e3 D& o4 x
% b- @9 `6 Q3 j
import swarm.objectbase.SwarmImpl;
! b9 L  _/ O2 _0 u' ^import swarm.objectbase.Swarm;! Z% g7 u# R5 H2 F: f" O" x
import swarm.activity.ScheduleImpl;) F" ?8 A& O% Y) e
import swarm.activity.Activity;* g# Y+ F  k( a4 V  G0 H
import swarm.activity.ActionGroupImpl;' U! n# ?9 l* S1 r( A
import swarm.collections.ListImpl;
8 i* |  b" R  ?3 u' Himport swarm.defobj.Zone;
9 X) V( J2 {7 _9 m6 I9 b2 A* ]import swarm.Globals;" r, j; I* V& K0 Q, D0 r- |6 G
import swarm.Selector;
0 y( c% v" g$ V+ @import swarm.activity.ActionGroup; " p* p! l) [6 [
class Agent {- v& F2 G9 z2 E9 I
        char id;
0 I3 t8 _4 M+ x: ]$ x/ I1 u/ L+ A8 q0 t( r
        Agent(char id) {2 {" T- w: s5 Q  F7 ]# |
                this.id = id;
0 H+ j% y  w% m5 X& o$ p1 u        }
' o7 S! Z( l8 I3 N; o" u, c; [) ]  h2 |" r
        public void agentStep() {
( K5 M( u& J9 v# j' x2 s                System.out.println(id + ":" + Globals.env.getCurrentTime());
, `2 n( m( ?3 I" ^, b        }. {1 H% q2 [% ]* k# ?
}, T. K' ^; _* b: x
2 \4 O% |& Y. y$ C& G4 s
public class ActionGroupDemo extends SwarmImpl {
9 y$ t/ p' E) m# R4 I        ScheduleImpl schedule;
2 @, p) S$ i0 j- ]7 N: ^3 `        ActionGroupImpl actionGroup;, x* M' y/ K/ O1 f$ u; l; D
        ListImpl list;
) u* ^9 @8 G+ ^) o; Y- l, Y; r8 ~& u% P        char Id = 'a';2 W, \% l- d8 F! {5 Z' i

3 M8 N; S! x1 i$ b9 r        ActionGroupDemo(Zone aZone) {
3 p( n* W3 P) C! ~- H                super(aZone);+ {8 Q7 a* B# e) o1 ]0 Z6 h& N
                list = new ListImpl(aZone);( v8 A. d! `8 c% F' Z# G' [# L( \
                swarmSetp();
- D- L6 A7 N; p- p& {7 X+ b* {                actionGroup = new ActionGroupImpl(aZone);
$ P7 m; J! E! n& T3 q% g7 a& d                schedule = new ScheduleImpl(aZone);
3 K0 b' z: d$ L                try {: w* Z- Z) O" w; Z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, ^0 z$ \! i( t1 ?6 P; e6 E                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 q) `1 W+ f7 x6 R4 h( w
                        " g% u2 |4 S" V, w) r. c
                        actionGroup.createActionForEach$message(list, agentSel);: z; K. ?# Y6 ^! j: T
                        actionGroup.createActionTo$message(this, swarmSel);" V7 t% Q7 {, f9 m
                        schedule.at$createAction(0, actionGroup);
, ]4 ]& K& K; a                        schedule.at$createAction(1, actionGroup);
( T) E3 |. @' x- t7 X3 b7 T. X                        schedule.at$createAction(2, actionGroup);- T  ]! i8 {/ k9 I) Z3 D& F
- j0 f: @! `7 {0 f1 `
                } catch (Exception e) {' B2 w$ V2 i/ R/ P5 o' u, I8 L
                        e.printStackTrace(System.err);
8 s* D  R9 o! x3 T1 c                        //System.out.println(e);7 }- s9 p5 Z5 P- |: |: F
                        System.exit(1);# F7 P8 B2 [* {! h
                }: o. l5 }- M6 f8 A8 j# I

+ W7 b* l) s' [' D- j& a  h$ f( W; z# c" Y8 D
        }
  L2 O$ O3 I/ V, L/ m# B7 [% S: x* v8 f; v& @
        private void swarmSetp() {
! V/ p3 p' ]4 C1 \6 D                list.addLast(new Agent(Id));; f* N: ^% }5 \7 e8 C
                Id++;
5 @$ V3 A% l5 n5 x' m        }
# w& {# W4 b& p/ Y# B" b3 u# U9 r  v
        public Activity activateIn(Swarm context) {- [7 T- K* P2 K; C5 [6 y
                super.activateIn(context);
4 V# [. m- K& ~( V- s                schedule.activateIn(this);$ t4 J9 D5 z8 i8 Y8 t, S
                return getActivity();& c% }' q- l" }) J* e. `
        }2 H; ~! l3 X% D& y
. c1 a6 l( c5 d2 I
        public static void main(String[] args) {
5 v7 p/ R! G! ]9 B, [! F                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 @, Y9 q# e1 f6 q' H                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) q4 Q) f8 E) B" n. [2 }0 `5 _
                swarms.buildObjects();9 U  c0 [3 N+ y+ o2 R# ]
                swarms.buildActions();
0 h( H* q  t) `$ e. G" i, i                swarms.activateIn(null).run();2 B2 S. I$ n. B
        }4 ~! J9 r. P$ m) s

, U: r7 B% H  P9 l+ r' ~}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-11 00:13 , Processed in 0.014910 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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