设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8353|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . K+ `7 G' x- P% d( t5 f
6 i' ^) w1 U; A8 ~4 e9 z) I7 s, k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; L) `7 F# D) j/ p/ \% w0 v2 Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ [& N/ L( k1 Y' E' r: a8 Yswarm.SignatureNotFoundException  v4 K! W, E: N
        at swarm.Selector.<init>(Selector.java:76)3 ^# ^) a+ G: b) a5 i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 t. U5 Y7 `8 I* G3 k4 I. c& D
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  ]; x( o8 x" Q, o' p( A$ c0 N: T4 t* v& W& h" l* q# {  |* g

/ n( d" b; x+ simport swarm.objectbase.SwarmImpl;0 f3 ]3 h$ _9 O! W' _) d
import swarm.objectbase.Swarm;" {9 \5 W8 j3 g- H- L5 K. K
import swarm.activity.ScheduleImpl;
0 ?8 Q  U  j) V3 rimport swarm.activity.Activity;
6 f2 ?  _. j% \  t" v6 s7 qimport swarm.activity.ActionGroupImpl;, g2 d: e; k1 u$ f% c
import swarm.collections.ListImpl;" d$ f* U; z+ m6 _0 n
import swarm.defobj.Zone;
9 s: }6 R8 t7 Z2 D. Yimport swarm.Globals;
% W9 Q; Z6 x+ mimport swarm.Selector;
. j  d6 C* r% \' a" i1 M, [import swarm.activity.ActionGroup; $ a! r$ t6 E+ f- G
class Agent {
0 A1 J0 E' o0 U- c3 M# C        char id;
" l+ s' n, c. c( g* l
0 t" _: d6 |# r  z4 u2 }4 \        Agent(char id) {
7 l' M5 }7 ]" y4 ]                this.id = id;
& E8 p3 e( i6 E8 v: T# \. j        }
  _+ O9 t/ T  e5 L  G: a- G3 v: n' B: K  K, Q
        public void agentStep() {  p, `  _& E7 |' r2 w7 o- U; j
                System.out.println(id + ":" + Globals.env.getCurrentTime());/ C" ]9 P% C, p5 b" G+ D
        }
8 x8 U; C8 v. X1 W: y: R2 o* |}5 M1 T# |" S! E! ~3 A" Q+ Z
5 b0 h8 v+ f' }+ c
public class ActionGroupDemo extends SwarmImpl {
- k- \# h+ A' G3 s6 a- @        ScheduleImpl schedule;- w/ M: h, z- X0 s- |! U1 Z3 E
        ActionGroupImpl actionGroup;
9 ^5 C8 O, O) W& d5 N. J* v        ListImpl list;5 L9 g+ g: q* b1 k8 V
        char Id = 'a';1 h7 G- a# o9 v6 s. f# |
4 u* d6 U$ _) g. q! R
        ActionGroupDemo(Zone aZone) {
% X8 S) j. E, O                super(aZone);0 c1 S, k4 n6 |# Z' U7 y
                list = new ListImpl(aZone);
: z. d9 ^* @" ]: W5 g                swarmSetp();( U# C) W$ O3 d/ q  I' K3 o
                actionGroup = new ActionGroupImpl(aZone);% ]4 y6 [' H$ N6 x- ?& y
                schedule = new ScheduleImpl(aZone);
: w, y( G8 T8 T! `; I3 \                try {
2 m8 U+ {/ @" D3 g9 A                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ b5 u9 a( A! ~! W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; E: i: R5 K2 c5 y
                        : B1 m- T4 q8 ?  T
                        actionGroup.createActionForEach$message(list, agentSel);
( Z: l& J1 |# {2 L( c' S; b                        actionGroup.createActionTo$message(this, swarmSel);
+ |8 {# f$ b- X- I7 p                        schedule.at$createAction(0, actionGroup);$ y' ?6 P( U6 J' ~
                        schedule.at$createAction(1, actionGroup);
/ }: g* z2 z2 ]                        schedule.at$createAction(2, actionGroup);1 w& A2 T, m. [; H. j3 p3 P7 @
  J2 m* A: J- j1 K- A
                } catch (Exception e) {5 B2 Q5 R6 E$ x2 ^; h2 f
                        e.printStackTrace(System.err);4 `% S' g/ ~$ c. T
                        //System.out.println(e);+ ?# D# Y5 u/ r3 P- x7 X
                        System.exit(1);" s) }, `9 x" V/ n$ @, y
                }
* b! k/ o, A& Y0 ]7 F/ @
  {! H. Y  }. ]% F" [. o3 q6 O6 @" V
        }2 i1 e0 \5 `8 `0 k( _, ~" v7 ?5 r- K6 c3 O

; M( V/ {+ Z1 A* [# _        private void swarmSetp() {
6 Q( d! h0 H% \& q9 R7 q4 k                list.addLast(new Agent(Id));8 J" K  Y  A3 T9 I: g5 J6 v8 M
                Id++;
0 ?/ g; x2 l  [1 R        }
3 P3 o( W8 [/ n( u
6 U; Z) R" V" `' [        public Activity activateIn(Swarm context) {8 B9 K# ~& a$ b- x" b5 N) I. Z
                super.activateIn(context);5 f: O7 {% ^/ ]- M1 P
                schedule.activateIn(this);
4 ?. C1 u  u4 ?. [+ \- r                return getActivity();
- G7 J9 P( q& c0 A& h1 u        }% u7 {/ E; x8 A; l

  p5 d! h$ u4 h! D        public static void main(String[] args) {
' C1 k$ D8 f) n) z% V% `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) N# n. w  X9 P* d                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" G! u( e0 d  V
                swarms.buildObjects();
: R* o5 }+ {. S( N2 ?$ U                swarms.buildActions();: r/ [9 a) M, T
                swarms.activateIn(null).run();/ T: {. k6 ?4 ?
        }8 a. P/ |1 u/ Y* q( q5 b# `
+ z: E8 ^' r. q" i6 X
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-9 13:05 , Processed in 0.020843 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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