设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11863|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ t5 {% I- [; {1 T
, p* S* o; a! P  n: G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% u7 a0 q1 W" S8 {9 K
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  d& M6 Q6 X$ Q" d  V
swarm.SignatureNotFoundException! [' A3 M9 Z. h' c5 F; Z
        at swarm.Selector.<init>(Selector.java:76)8 h$ v6 K1 x, G( i+ I( a# H
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 x1 Q1 W9 F9 Y- y. E; r6 ]
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 J# ~7 ]8 M0 @/ F6 z- `# K' V8 L5 q1 h7 K$ j$ U* x2 i5 k
& z* P9 i2 G; L( z" A( F! [
import swarm.objectbase.SwarmImpl;
. \+ W: W8 X6 l2 M$ s1 Iimport swarm.objectbase.Swarm;
6 @2 L( J% F/ V- h% zimport swarm.activity.ScheduleImpl;9 d+ I) `8 P4 G2 Y  I8 Z/ K! j
import swarm.activity.Activity;
6 X( o" {. b. I: o- Himport swarm.activity.ActionGroupImpl;
  n; L! ~6 V3 L1 D9 L, ^6 \import swarm.collections.ListImpl;3 w3 V6 F# S' H
import swarm.defobj.Zone;   w3 G: u% l& L2 C
import swarm.Globals;) Z% d( R& S# Q
import swarm.Selector;
3 c  L9 K' @# P8 ~1 \import swarm.activity.ActionGroup;
9 @; ]) P: x, r" ]( j' Hclass Agent {
9 M7 I% z2 x! ~: |/ R/ u0 X        char id;4 k( q8 O/ T$ I$ B5 {( B

5 _/ s. F0 P' u, z4 l$ H5 {        Agent(char id) {
; {6 T, E$ G0 w+ W$ o                this.id = id;* o; l/ j) m' S9 L0 Y( a
        }
6 F- O1 R7 }2 E
) @  ?1 |) [4 J( Q5 N6 E        public void agentStep() {" _  G6 z/ }6 ~" _1 C
                System.out.println(id + ":" + Globals.env.getCurrentTime());- [9 W4 y3 L1 p+ Q
        }
2 F! N7 V: x& K; v$ q5 l% K2 H}5 ^. B/ D" V$ t6 E2 p' @) K
. I+ O3 n" M1 V+ o" W  s
public class ActionGroupDemo extends SwarmImpl {7 ]+ ]) D# b. L  l
        ScheduleImpl schedule;
3 I& q6 Y4 I% B7 V8 C        ActionGroupImpl actionGroup;
3 s$ t* [5 I0 a7 p/ C+ ~7 J$ s        ListImpl list;
) p% Q1 C% u- O! D, o) N0 z1 B        char Id = 'a';
# J, Z' ^& w  [( ~. O) r' K& n3 v  K% R7 ~$ G/ T6 m
        ActionGroupDemo(Zone aZone) {- q; T( Q% f2 E, f3 F
                super(aZone);$ ]. n* _- [6 u5 i+ a, f2 P
                list = new ListImpl(aZone);. p- p! u& `3 X  x2 w1 }5 y
                swarmSetp();
9 P4 G  V0 ?4 Q+ y3 k1 c  \5 D' f                actionGroup = new ActionGroupImpl(aZone);
$ X1 D8 ~9 c  d" Z- e& k3 \8 \$ I                schedule = new ScheduleImpl(aZone);
( m& H% ^0 S$ s6 f# d                try {
) n- F- q  u5 `+ ^. t! z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ R! }/ D. t, P" X9 {                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% X7 _& o: [. N5 h                        ' W( g8 R( c5 G4 n, t$ E3 U
                        actionGroup.createActionForEach$message(list, agentSel);* ^+ `  \! J$ I- K5 c+ ?0 Z
                        actionGroup.createActionTo$message(this, swarmSel);
+ @# ~0 i7 c) B                        schedule.at$createAction(0, actionGroup);
, @9 e& r: R$ I+ K2 B                        schedule.at$createAction(1, actionGroup);
" [2 v: [" H0 x7 ]* u/ x) U) d                        schedule.at$createAction(2, actionGroup);
, u& h. R1 T' Y2 v0 `% V% I" o( @4 X3 y( j+ |" y2 p8 @( Q# r
                } catch (Exception e) {
/ m* o, W/ B! f- n3 H' D* T( i                        e.printStackTrace(System.err);  T1 J- F. |( B3 Z) j& b- k
                        //System.out.println(e);
! {4 {( N- Z! z% D                        System.exit(1);
/ X+ M# K: @9 D; c$ j                }7 @6 O0 A6 w4 o4 u( _1 y4 J) a$ j

3 k3 Y0 n) H; Z# {( A$ l7 {
# [  k8 b2 o, m        }
& U7 H$ B4 W) I9 L
! |$ a6 p8 ^$ `8 |- X$ h7 K        private void swarmSetp() {: Y5 l1 q6 f6 }! H% h& x
                list.addLast(new Agent(Id));
: M4 z: D; P+ U6 E! L# E" f                Id++;. e: `* z2 ^- c( h5 k# ]1 a
        }
* w6 N" G1 {( O" P6 S3 Z  t* O( O+ J/ W& L! k
        public Activity activateIn(Swarm context) {
* {8 O& s$ `( O- l4 u  r                super.activateIn(context);% i' U5 D- ?' Y' _' V% Y
                schedule.activateIn(this);
  ]+ u% G$ u6 R& ?: n( s8 f                return getActivity();5 N% `( k# i9 ^: B" _
        }
( Q. W5 f, B$ P4 j# W' Q: y/ V
( _* ?' d+ q9 D- d8 z: Z% Y/ T# Q        public static void main(String[] args) {
5 D7 I6 e# n* T( ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% o$ |& h; N" Z+ l" R3 {3 V                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 `5 n# ]% Z; M& c* F( V4 B                swarms.buildObjects();
6 R. z! [6 I$ C3 m8 Z! C                swarms.buildActions();$ M. e- W/ `! T( U9 J
                swarms.activateIn(null).run();
! ^9 s/ Z5 h3 ?$ w        }5 _  L5 S% Z0 M! z9 ^* P+ k
" X0 j3 r& d( u- E
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-24 01:19 , Processed in 0.019457 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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