设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11649|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * r, F# Y9 c" l, l5 U
+ s$ t* P' R) i# ?3 X+ e% e7 l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 Q! j. \( W1 z4 x4 P! v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; D: ?$ y" e; }2 Z2 G4 Oswarm.SignatureNotFoundException) [1 R9 B9 X2 l( u$ r% P
        at swarm.Selector.<init>(Selector.java:76)  ?8 f1 U7 Y3 `1 M8 w6 h
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)! F. Q* V+ ~3 X0 T5 Y' U1 G/ e! A
        at ActionGroupDemo.main(ActionGroupDemo.java:67)8 `% H" t5 K) W8 g& q( P
+ X3 z9 V4 ?- h" b- e
# X9 Q6 X9 y4 q- k1 T7 o
import swarm.objectbase.SwarmImpl;
% `" _: [3 n4 l3 ~" E, fimport swarm.objectbase.Swarm;2 V) i  C1 o  P8 q
import swarm.activity.ScheduleImpl;
8 f) L. a% [2 l5 Eimport swarm.activity.Activity;4 h* _' L! H! D7 ?8 Z2 `& o& M
import swarm.activity.ActionGroupImpl;
% J# E2 ?4 k1 X# O' G2 h( Kimport swarm.collections.ListImpl;- E$ ~* B% X9 |6 N0 |& B
import swarm.defobj.Zone; ; b9 j1 K3 T- _7 t" G4 V8 B. i
import swarm.Globals;4 I$ h7 l: v! i0 K; v2 M) _+ }
import swarm.Selector;( u0 c% ]8 ^! o  A
import swarm.activity.ActionGroup; 0 P1 }9 V4 {' Z% u3 _9 D
class Agent {
7 k9 q, O% w- l" }        char id;/ \8 R" d3 y: U( r2 V! {
1 Y5 N# R1 U- Z% r
        Agent(char id) {* |6 a/ Y: i$ w8 ~# u
                this.id = id;. j# a& A. Z, _
        }
# L; x+ J( N9 s. I" e
/ S: h' O1 j5 a- q% Q; N9 e        public void agentStep() {5 ?4 I1 e. n  _. |$ ?/ e
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) E4 o6 J! \* L- h- G7 R        }
; t5 ?" r5 F. o' J' o) {}" d( F9 U% d8 |6 T8 F1 O8 a

+ I" |- D; W% C4 s2 Jpublic class ActionGroupDemo extends SwarmImpl {
: A' a' `7 _7 I1 k        ScheduleImpl schedule;7 H6 a! w  Z0 Q# s5 t/ c) R
        ActionGroupImpl actionGroup;
- Z7 y  k2 _6 M7 U* i        ListImpl list;+ X+ c  K2 H) C# j% P6 `" K
        char Id = 'a';
) H5 l- [3 @- L$ f5 K
& K3 \* L/ k: o2 o4 T/ ]& a  i3 }        ActionGroupDemo(Zone aZone) {! U) ^( I" j/ t/ l! D1 O8 B& S
                super(aZone);
6 a$ B( m$ }: c- L* A                list = new ListImpl(aZone);
3 e# L! U! O2 t* S) @4 ]                swarmSetp();
% L: o) ~9 H0 X% @! E4 l9 d9 J                actionGroup = new ActionGroupImpl(aZone);0 m; P/ s" R& r& E6 k# {
                schedule = new ScheduleImpl(aZone);9 X- i. j$ V' T- e5 A9 M
                try {; ?4 B) a# M  ?1 @8 |: k
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. {6 i3 u+ N+ t, _7 P; b% w; W
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. ~2 C. L/ _# H
                        . \. }1 V& `3 j2 ~5 g3 p, m! y
                        actionGroup.createActionForEach$message(list, agentSel);5 q' |9 J/ z+ H3 v7 C- D1 w  i9 _
                        actionGroup.createActionTo$message(this, swarmSel);1 {$ l/ d) c$ f
                        schedule.at$createAction(0, actionGroup);
& `/ i! M, B; n  ~3 F0 s                        schedule.at$createAction(1, actionGroup);2 ^, g# |- E5 j6 h( k* F
                        schedule.at$createAction(2, actionGroup);: C# `  B* u9 Y9 B

% L% N: E* P3 |1 c$ [* O                } catch (Exception e) {
" O* J: `0 O, @$ l1 H                        e.printStackTrace(System.err);
  j) V( q' H5 N6 d4 _! G                        //System.out.println(e);1 a( e" I3 X7 B4 w( }3 P1 k6 A( o
                        System.exit(1);- S4 P7 M3 T1 K4 ~
                }. K7 r4 [" _* M, Q

% r( Z7 }% E7 w' N) X3 W
" p) ~% x9 @( g$ l. |        }
$ X' Y$ O# `9 V, t0 V2 X0 u2 Z3 U4 y; a7 P7 }+ c6 m# U$ m8 E- y
        private void swarmSetp() {
* a# b! Z" b3 M                list.addLast(new Agent(Id));2 A# K& @1 `8 m) I3 _
                Id++;
" _# G" E0 ?3 O' k" @        }
+ ]; B4 i$ d% M9 `. F: r+ V5 K( f' D% F9 Z, K' l
        public Activity activateIn(Swarm context) {
' y# o' [; u/ q$ o* ]* d                super.activateIn(context);) a$ @, N- x( b7 @+ g# @
                schedule.activateIn(this);* R+ b4 f: O/ @* Y2 |+ ]* E/ m, Y0 M
                return getActivity();9 e4 m2 ^* L$ R; U
        }
" d6 J6 c+ Q1 X0 L, i3 {$ \$ E: B* Y% B/ f+ A4 F" r/ P: T" w) [. A
        public static void main(String[] args) {
" p2 R! ^7 _2 w5 B' A4 w- h5 O                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 _8 x2 J( `  f4 q( ]$ o                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 z( H1 c- s/ z3 N' J
                swarms.buildObjects();  r0 B# g  i. u5 e
                swarms.buildActions();( ~4 ]: f  B9 L  f1 n. b
                swarms.activateIn(null).run();
4 ^# n1 ]* e) Q7 L3 ?. W: p        }1 M3 u4 g  c$ o  G5 H: k. |
4 N/ |0 K, r$ f5 G! R. R8 C) k
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-18 06:17 , Processed in 0.013694 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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