设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7430|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  s% D3 a# j9 o8 |& }% j8 g0 H4 A9 P8 e2 H" d0 V' k. |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 P: O0 z& D" I8 g5 |6 s. ?以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- |, R1 y; k  e7 `. Mswarm.SignatureNotFoundException* ~+ \- N. O6 A% u
        at swarm.Selector.<init>(Selector.java:76)8 X% ]* @0 j$ p) {. E
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); C$ G4 H) V1 ?" s2 U0 x
        at ActionGroupDemo.main(ActionGroupDemo.java:67)6 w  [; i) |6 r1 H
8 `1 ~* o$ \) V1 r$ M- T" P. x$ @* h

7 _1 p8 {" ~; P; O, P( z0 U# u! Aimport swarm.objectbase.SwarmImpl;
4 }8 x0 N8 A- W. Iimport swarm.objectbase.Swarm;
8 G8 F" _: i* J3 U& E5 [: u' Mimport swarm.activity.ScheduleImpl;$ t8 }  o2 ]5 }$ a+ y' l: p
import swarm.activity.Activity;
; w5 C, i' O& P0 t# S- y: [0 Himport swarm.activity.ActionGroupImpl;6 n4 _, P8 o3 u) U1 {3 F3 g6 g5 X: L
import swarm.collections.ListImpl;2 ?! a& y) @% g* R! M1 Y+ `1 p5 x# l
import swarm.defobj.Zone;
0 @9 ^8 T7 K& B  ^7 O; {import swarm.Globals;# U4 q$ o6 A5 K& e  [
import swarm.Selector;0 J% I* o, Z6 A" ^5 e
import swarm.activity.ActionGroup; , A, F+ Q& ?# s; i9 e- L! l
class Agent {
, Q: f3 B9 s" T6 u        char id;/ o, d' I* _! M% U# R1 R) v5 ?9 {7 Z

/ o' v  T: [' d1 W* l1 g        Agent(char id) {
( Y8 L8 a. w! E: \                this.id = id;* `; m% V: ?: s' J
        }' M- t/ ?: z0 E4 N) `% `8 ?
& O: l6 a  y% v4 ^$ K% ~
        public void agentStep() {
' F, ^* v' G; ?- C                System.out.println(id + ":" + Globals.env.getCurrentTime());8 f4 K7 L9 p' `' Y: E
        }% u* ]% `" }, I3 p- H- r
}
9 V! `* U5 ?  Z6 N) t$ X5 h3 Z% i3 [. M
public class ActionGroupDemo extends SwarmImpl {9 C1 r. l1 u+ m& q! J, F, x% ]
        ScheduleImpl schedule;
+ S4 P; t. R1 f; N* ?  T* K, G/ w        ActionGroupImpl actionGroup;( e0 K8 x3 F5 M! y6 f) _
        ListImpl list;' `  b- `6 S0 ]9 x
        char Id = 'a';5 w& V% \1 L% E8 K: U) d2 o
5 `! E% `  r" P/ d: H( @
        ActionGroupDemo(Zone aZone) {. g3 y2 h2 H9 |* h( A  S
                super(aZone);
+ z5 l' J1 Y: C! O" j                list = new ListImpl(aZone);: v- p6 e$ x6 Y2 @  i' L
                swarmSetp();
4 y" Q$ }! j& r- o9 j2 a                actionGroup = new ActionGroupImpl(aZone);
; }/ V+ Y6 u: B9 W# U2 a5 k                schedule = new ScheduleImpl(aZone);% z, K' ?9 U+ Y) A- o* H# n
                try {
3 Y2 H/ z& S9 f8 p/ k3 T3 G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 ~6 c0 {# ^; M, y* Q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 [: g, Y  \. O" [
                        7 a1 J, q" z; m7 K/ W! `
                        actionGroup.createActionForEach$message(list, agentSel);: b; A0 e& `4 R7 s, Z
                        actionGroup.createActionTo$message(this, swarmSel);
4 y8 v! N# _$ ?* z% ~/ W; V6 l' v                        schedule.at$createAction(0, actionGroup);
8 i- @/ q: B# H/ t( p. j( y& m                        schedule.at$createAction(1, actionGroup);- q+ v5 b- K- Y; u5 b
                        schedule.at$createAction(2, actionGroup);
# S7 P$ B, \2 i+ K9 T, `2 O# p2 C" e# J; v
                } catch (Exception e) {
- v. g' J: D: ^/ g) L                        e.printStackTrace(System.err);9 [0 t6 [' p* L1 j7 G/ [& X: R
                        //System.out.println(e);, A, G" y, }4 E. ?+ d
                        System.exit(1);
  J/ ?  [2 n! v" r8 A1 F& y                }2 Y* g  c) N& |* B: i4 n
% Q1 }  p6 X: j9 H4 O
* O  X4 W( Q" J$ Z: |4 p! y* Z
        }
* Z+ R# u6 k% W: W1 E, Q8 T' I
7 \4 b! i3 {# T0 e; r& \; d        private void swarmSetp() {
( o5 ?7 Y, s: {3 d- Q& k0 d                list.addLast(new Agent(Id));
- t* K, M; U5 ~: c' j/ M- S                Id++;
% S0 c$ Q% W& m; c+ x        }0 ^+ o( h: h+ w4 p1 E! b
+ d% q7 o# R, p- u% m
        public Activity activateIn(Swarm context) {
3 i5 H6 X" ^- h" F                super.activateIn(context);% c8 T1 x/ k% X7 Z0 B* L! U" A
                schedule.activateIn(this);
# \2 B8 S. o4 [& Y8 E& s" N. E                return getActivity();
  C1 @( H9 p! p- A0 @" c- u, k        }
- T1 f/ `$ l2 @2 o( K8 {/ ?) |6 h
* h5 y' f& g- D. m' j1 {; J        public static void main(String[] args) {- `1 k1 L: `% @6 J' I# S- z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 L+ o7 r/ e. U                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ O7 w$ p9 x6 b6 g0 _3 W5 E, U" t) q                swarms.buildObjects();
( \1 {  v' A. E+ ]% t! V* U9 _                swarms.buildActions();
7 s! l% {4 U- U. b% x4 C$ s! l6 T5 R                swarms.activateIn(null).run();
$ j  a  A8 X' e% o  E        }0 F/ J6 C* j  v$ D( L9 C8 v; A
& X) U. S5 o* z, I8 ]  |$ a: ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-2 11:36 , Processed in 0.016636 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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