设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6932|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 ?$ t2 N# J/ z* _" x" V3 B0 |: @* {+ x) N) @+ q" d; _& j5 e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 A& D- g' a6 A/ F3 \4 u3 T
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# Z$ \+ p' a  ?5 `+ O2 sswarm.SignatureNotFoundException
0 i( E; s! Z7 {/ \        at swarm.Selector.<init>(Selector.java:76)
4 m! U3 v9 V6 A9 {/ T; g& d+ g8 `        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; H) e/ d) Q7 ?! h2 p8 b, F* A6 @        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: D) u7 Q: |2 _8 z
. D. u6 k# e9 q( _! Q( l' @2 r) U: h9 x/ f" s5 ~
import swarm.objectbase.SwarmImpl;
( [2 X3 a6 _! s: @1 x9 U+ @import swarm.objectbase.Swarm;
. W/ I" _! {5 Rimport swarm.activity.ScheduleImpl;
/ h. e7 o9 ]& t. Rimport swarm.activity.Activity;
3 f0 c6 Z, u% t" V' yimport swarm.activity.ActionGroupImpl;
5 ~. k/ H# y- pimport swarm.collections.ListImpl;
: O; A3 J2 n# N. x6 U: T* ~import swarm.defobj.Zone;
  d4 z& s) i* \: ]$ X- {( `" qimport swarm.Globals;
0 H+ q! k7 E1 Z# T/ yimport swarm.Selector;
! c, K' n2 c5 Y5 z8 iimport swarm.activity.ActionGroup;
( t" h: x& e" V- V! b$ f: s% D3 rclass Agent {
1 k" S3 H3 B  y; g7 ^        char id;: d; }) \! n, r& ~7 X2 y; X

* y, @. x- ]3 S7 {* N" c; D- d        Agent(char id) {
# ]/ x2 Y1 i) V% [                this.id = id;
* G! R; o6 J7 R8 N4 s! A7 I) `8 c        }
! ^; R" e  m2 a# E' `9 s( S- {- ?, e$ Z/ K- E  Y0 u
        public void agentStep() {
2 b  |! a% ?9 |5 N# @                System.out.println(id + ":" + Globals.env.getCurrentTime());
: e  t) ^4 Q( i1 S( V        }
6 o% [7 _# y+ P6 G( O" n) r}
7 [+ b! m. a& ^0 ^% e+ O% a9 t4 A" R, U8 t" V+ v$ ]
public class ActionGroupDemo extends SwarmImpl {5 X, }% ~+ V* n# F: [
        ScheduleImpl schedule;
) r# T. E, \1 u8 [        ActionGroupImpl actionGroup;& o# O4 |* U. j7 d0 e
        ListImpl list;* O' J  {: F3 @7 f" p
        char Id = 'a';6 W6 h( y  `" H/ O9 `& ^
% I4 X( Y5 T, g: p9 O8 X0 q
        ActionGroupDemo(Zone aZone) {
- L2 }6 H- t% Z# F' h                super(aZone);
0 W4 i; [& ^) u- z                list = new ListImpl(aZone);9 m: n1 E1 t' O; I
                swarmSetp();
2 b9 i, q7 ?8 k                actionGroup = new ActionGroupImpl(aZone);7 q& c  W$ ^. v
                schedule = new ScheduleImpl(aZone);
& U; n, Z  L- b. c                try {" L3 E( i+ W/ n5 m
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 g5 A: }% n, f4 l. L
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) B6 E$ ?& S! N1 G$ V                        1 o( b+ A1 U, O
                        actionGroup.createActionForEach$message(list, agentSel);7 }$ H% T9 j. W8 J: x$ l) |# G
                        actionGroup.createActionTo$message(this, swarmSel);" f1 V* \" k) n
                        schedule.at$createAction(0, actionGroup);
6 o* ]$ m  ?; c* a  M# E                        schedule.at$createAction(1, actionGroup);
! M0 i- I! a: E& K! }                        schedule.at$createAction(2, actionGroup);8 ?9 U" A& s6 `5 b  [+ E
" P, f5 s, E$ ?4 Z2 i
                } catch (Exception e) {
7 z$ }0 s9 S, m. \                        e.printStackTrace(System.err);& \( \! u! @! v1 k* D/ g
                        //System.out.println(e);6 V/ ~2 ~, S. D, R4 W
                        System.exit(1);% x6 |. }+ E4 y& H. N
                }4 W6 |! m! f6 n- O( {/ k
$ }4 S+ y, `  }9 ^9 x  u1 u  s
  l$ F" q1 A% W
        }7 v, u' x* U" p: i9 ?" S
4 j2 {4 ?8 Z$ t% t; t
        private void swarmSetp() {# s! k  S% t' C; ]" O- A
                list.addLast(new Agent(Id));) J0 ~5 {' }) T8 s
                Id++;
1 z9 V+ _* V) z( p# H$ z        }
: I' S4 E8 e  s/ ^6 |: G- U9 v1 P
        public Activity activateIn(Swarm context) {
; H- c! e% L, ^9 `2 i0 y2 w2 E                super.activateIn(context);: T, I0 w3 D" s0 [& k( j' r8 T  n
                schedule.activateIn(this);, y+ m. O6 F( N$ V& X3 g$ |0 a
                return getActivity();" k+ f. h! J0 w% U$ H
        }: @' @( p, M6 D( @) g5 t. b6 n7 Q0 P
4 y5 X; V) Z3 B- m+ [. j2 E7 y
        public static void main(String[] args) {8 N0 r3 H+ j+ p1 Q" p/ O8 D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* \: f( t$ \: r. @9 J                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ j5 t( ^: K8 E& T: e* C7 M" K                swarms.buildObjects();* u! W" W1 O2 T! y; |6 Y" D' i
                swarms.buildActions();
" v/ y4 V$ @! q5 r0 t                swarms.activateIn(null).run();+ i, l. O1 N/ u
        }
$ f# L; g7 Y7 ?
# `7 r6 A; A4 ]! G; y4 Y# l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-13 20:47 , Processed in 0.020579 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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