设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8741|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : F: A! F  U3 W& `
. R7 \- C; o6 D# q/ R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 z7 _' x+ T. j* X! x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. h( t( b3 V. \% Jswarm.SignatureNotFoundException5 s, L$ h0 K5 d% U, I9 p: j6 F
        at swarm.Selector.<init>(Selector.java:76), q  N5 M4 y1 h
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. E; X4 c2 f% R: i6 ~7 t5 Y, @        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ V' P, z: C& z6 F- _
# J( `' I+ x0 m' ?, Q" O# ?! ]/ @5 U3 X$ G* B  \; d- ]
import swarm.objectbase.SwarmImpl;/ }& G' j$ D4 k  @
import swarm.objectbase.Swarm;& i3 n+ o5 [" N% d
import swarm.activity.ScheduleImpl;2 @, J4 w. P! o; o% q# m
import swarm.activity.Activity;+ k4 d) Q' R. Y6 ^
import swarm.activity.ActionGroupImpl;( \$ e5 ?" |" ?8 o
import swarm.collections.ListImpl;( l+ W9 u6 I* V9 w# q* _
import swarm.defobj.Zone;
8 j0 p, K6 j. Iimport swarm.Globals;
& N8 {$ k% U* S8 a" k# |9 cimport swarm.Selector;
3 F# h9 d  p' K/ n1 f) X" n. dimport swarm.activity.ActionGroup;   i8 ~2 T: G9 |) ^" M- G6 G
class Agent {
7 j* ], y. ^( J        char id;/ k" l/ |0 Y1 u5 S* y

+ ^1 R6 j7 a+ M# r        Agent(char id) {
9 S) P4 Q" E. o                this.id = id;# Q3 n, G8 Q8 K, n( E. z
        }
2 i2 \5 h* {: e1 m8 e* B* M' N1 m2 d3 g% G
        public void agentStep() {
' M9 O$ C* O& E) ?4 f* k                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 a! C7 L; Q6 f- i6 U3 w: y6 D        }7 T1 a9 `1 I8 @; H0 y% g6 i* D0 [
}
! B5 ~4 ^$ e! a  r, P" N$ q( O9 Q
public class ActionGroupDemo extends SwarmImpl {' y: i. v3 C8 e' j+ c
        ScheduleImpl schedule;( G1 T6 q+ H' v  I& A
        ActionGroupImpl actionGroup;3 N8 \; A. H/ A8 r2 a, ]4 C1 P
        ListImpl list;
- ]& j8 D% \$ q, S        char Id = 'a';
8 h3 U7 @" K" A3 @( n6 s5 X; F
0 b( s0 f0 G7 g1 @! Q        ActionGroupDemo(Zone aZone) {
2 g% Z2 _( T) @# A7 B) Q                super(aZone);
3 S- d& h" I" F; V, e  ?) K                list = new ListImpl(aZone);
( ?! h  b8 r' H) f                swarmSetp();
$ Y$ v6 b7 M* i# v" U& n                actionGroup = new ActionGroupImpl(aZone);4 Y" z: L) D0 [! h2 N
                schedule = new ScheduleImpl(aZone);
5 C$ ~4 s6 Z: }                try {9 P- w1 a. Q+ d) l0 j
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, ~! `# e& D9 N. I: e+ j- R                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 w6 x5 \8 _5 c6 ~  Y3 @                        
' e+ v7 j! k/ M$ y- m, t) {                        actionGroup.createActionForEach$message(list, agentSel);
( m0 o. S& T. _  {5 N6 C5 l$ s                        actionGroup.createActionTo$message(this, swarmSel);
% k! w, V6 X: D% U                        schedule.at$createAction(0, actionGroup);
7 b% g+ s6 P0 E& b4 I; e                        schedule.at$createAction(1, actionGroup);9 s  h5 ~% ], d
                        schedule.at$createAction(2, actionGroup);
8 q8 C! y1 H$ Z2 E0 n& r3 u" G  j5 j, J6 m
                } catch (Exception e) {" X) Q* t+ X7 A) W( z1 o9 X
                        e.printStackTrace(System.err);- g/ |: u- q1 j) e2 ]3 n! y
                        //System.out.println(e);
" v4 X3 R5 C( X; P                        System.exit(1);
7 w" l. a+ r" Z                }
/ R5 V# y+ J8 r' U' E9 M
( y6 a$ o2 l# a/ n( i, W1 s8 [! F
9 K5 T2 p4 V. q; x( q        }
" a8 X' l6 C# p1 e! s" i- p# W- |: x% e
        private void swarmSetp() {7 ?) t, {7 P$ x( U+ S
                list.addLast(new Agent(Id));
3 R6 F4 ?: e8 P                Id++;
2 O, ]# V+ k1 \2 [/ f$ J6 ~        }
, j) E% s9 e: j) R# ?  ~; u1 \5 c& A. _
        public Activity activateIn(Swarm context) {
; r: _' A* |& w0 `                super.activateIn(context);
0 f% x4 v: R& V                schedule.activateIn(this);5 {8 s% z7 T* S
                return getActivity();
) f5 ^1 x- s' w4 M' O        }
8 ^2 Q" N0 N4 D% B6 `7 [- F/ k0 n( h0 ~3 \: S% s& _
        public static void main(String[] args) {, r* a2 ^! L3 u, _6 e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( D6 O* I5 Q) B6 ~. a5 p! f
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( J( m* L5 u- l/ ^( z                swarms.buildObjects();
6 s) H- b) ^, h/ g4 s                swarms.buildActions();
- y# e  B8 p/ w$ d/ c  L                swarms.activateIn(null).run();
9 d" z' e" o; ?        }
9 v5 A. b9 a( i$ R1 j! K" P* P3 g4 d$ r5 `3 E9 h3 }
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-21 07:47 , Processed in 0.014702 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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