设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6304|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 O8 H: M5 h& k- U* r* O6 p7 B

/ A. [7 B0 [0 w/ ^$ H, u% R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  u* s# j, q# j: w! m- e$ o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 j7 K9 l! u0 I0 q9 A
swarm.SignatureNotFoundException$ Y& i/ C: c% y! X5 o% k
        at swarm.Selector.<init>(Selector.java:76)
$ M) H9 r( j6 U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 f9 ?4 l. Z& {  B( W
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, I: D* u5 b+ A5 y& p7 a- b- H3 n0 ]
7 _$ W1 Z# P7 ~+ z+ S5 D  `
import swarm.objectbase.SwarmImpl;
& H7 T8 x1 f  A! _/ o& I) `import swarm.objectbase.Swarm;, F1 g" Q  B, c( \9 O0 q; J+ A7 e
import swarm.activity.ScheduleImpl;& @# `" c& H& K5 U# Q7 v
import swarm.activity.Activity;
8 k' Y2 k: ?5 T& r' A9 uimport swarm.activity.ActionGroupImpl;# g( i+ l7 y! n+ R$ {* P
import swarm.collections.ListImpl;
2 A" D. P! @" ^; T- @; a) Rimport swarm.defobj.Zone; . Z8 f, f! f- O0 t( J; M
import swarm.Globals;' _  C: t8 R% w, b
import swarm.Selector;7 A* e1 L1 G+ Y" p/ @# o, b& V0 |: C
import swarm.activity.ActionGroup; . R2 B! m! G( w2 H# ]% x
class Agent {# w7 A0 _" `7 w% z
        char id;
, {; ]  N7 z; t0 ^4 f( G3 e. \; j3 r1 L* M
        Agent(char id) {
) s) D5 p6 ]3 A$ H8 X# O                this.id = id;
+ c8 _" s- Z1 z8 |        }" b1 Y" g( B& Z( p/ h
  W8 D" i$ E% A7 N6 ?
        public void agentStep() {3 Q0 n3 d. y! `# P# O. e- ~
                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ h- x# T2 Q, b; z' I% l! V; O        }' Q( w$ v  d' W  S! |4 c
}
9 g6 h3 X) g# u5 d6 _1 B7 i8 D6 J; g
public class ActionGroupDemo extends SwarmImpl {
' J$ w' z- J* W1 Q  q1 X0 f4 x. t        ScheduleImpl schedule;) U3 G6 r- O3 w1 z
        ActionGroupImpl actionGroup;$ O: N3 n+ ?9 d& y9 A' m
        ListImpl list;1 B) H! E  ^+ \8 z- i; ?
        char Id = 'a';
$ C4 ^- N7 X1 N/ ?3 b% B; o+ n: R% u, `* x2 A
        ActionGroupDemo(Zone aZone) {
5 `8 X  c6 d6 `9 G, i' d# R                super(aZone);
0 M$ z' d2 n1 Y                list = new ListImpl(aZone);
. n: N( P6 w2 s/ G! j                swarmSetp();
  g1 l8 e+ l% F  C( S- N                actionGroup = new ActionGroupImpl(aZone);$ H2 {: j- i' H: `! ?
                schedule = new ScheduleImpl(aZone);/ i+ G0 q! ~' K1 K  O$ e& j
                try {; W' Z6 I+ c+ X. @  D4 {
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- B4 a" A  D( i1 I7 N$ f                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; ~- H+ K/ l5 j5 G7 B- Y: ?                        . @9 |' d. O3 ]( k4 T8 L' {
                        actionGroup.createActionForEach$message(list, agentSel);5 ]2 ~1 N+ X/ U* G
                        actionGroup.createActionTo$message(this, swarmSel);& K5 q7 J2 b+ W% w6 [8 k
                        schedule.at$createAction(0, actionGroup);; l) X2 s, N3 u1 d9 n2 q
                        schedule.at$createAction(1, actionGroup);
+ r$ i. ~! K9 h3 y! X$ w+ H                        schedule.at$createAction(2, actionGroup);- M2 n8 R$ [! S! @( ]2 [
, i% N; p* q: \, w5 z+ G
                } catch (Exception e) {$ l5 ]6 M' v# U
                        e.printStackTrace(System.err);
; o  K" w8 s8 H' O' g                        //System.out.println(e);
  i) r4 P8 z( f: d/ L( j3 y0 C                        System.exit(1);8 H0 q$ q* d( B6 E1 \& e, B' e
                }% g3 j7 o- U! U, s) F

9 L, G% R$ S+ v% Y3 X# l+ k4 Z2 B% U0 W) }
        }
3 t) @( f. \. ~/ P5 r+ Z( L. p6 N# O* }/ y/ p' Y$ D( e. U, G6 r7 q
        private void swarmSetp() {
6 Z3 u1 L+ `6 ^                list.addLast(new Agent(Id));. b8 J( q7 ]7 V# \
                Id++;6 i& _2 L- G7 [) D
        }; i' c$ V2 }) {6 V* l
6 ^) R; v: |% f5 `
        public Activity activateIn(Swarm context) {
5 U- n* J- w$ I0 {                super.activateIn(context);
) @9 a9 ^. j# d" m2 k                schedule.activateIn(this);/ J( i$ z, f. r/ w, ^& K
                return getActivity();: Z5 _. y: h$ X; X# T( q* o) d
        }4 n& _9 M9 ^$ `4 u$ d% c& T% u
. K/ j) O" Z) t- z
        public static void main(String[] args) {6 L$ M& A; W6 @, T: H# d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) {% Q1 V: [+ M: T2 A, X( i
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, a0 i2 j5 X' h& i3 q                swarms.buildObjects();
1 q+ C6 U3 k! |) g: G  @) _                swarms.buildActions();
* y% j, o# E! ]9 H0 k( _% f# b3 C                swarms.activateIn(null).run();
4 l- \4 ]! P& c1 ~: G  |        }% F' z# v3 B5 p/ H9 ~7 A
* \! G  i* j/ j3 R! _0 m* q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-24 14:30 , Processed in 0.014291 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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